Duc*_*uck 3 bash floating-point
我有这个脚本可以将图像重新缩放为百分比值
#!/bin/bash
percent=$1
echo $percent
for img in `find *.png`;
do
echo Processing file $img
width=$( mdls $img | grep kMDItemPixelWidth | tail -n1 | cut -d= -f2 )
height=$( mdls $img | grep kMDItemPixelHeight | tail -n1 | cut -d= -f2 )
newWidth=$((width*percent))
newHeight=$((height*percent))
echo $newWidth $newHeight
sips -z $newWidth $newHeight $img
done
Run Code Online (Sandbox Code Playgroud)
我的 bash 被配置为接受逗号作为小数点分隔符。
所以,我输入的乳清
rescale 0,3019
Run Code Online (Sandbox Code Playgroud)
我正在尝试将图像重新缩放到其值的 30.19%
问题是这条线
echo $newWidth $newHeight
Run Code Online (Sandbox Code Playgroud)
向我展示了乘以 3019 的值。奇怪的是,第一个回声
echo $percent
Run Code Online (Sandbox Code Playgroud)
显示给我 0,3019(正确的值)
我错过了什么?