
画像をパーセンテージ値に再スケールするスクリプトがあります
#!/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
私の bash は、小数点の区切りとしてコンマを受け入れるように設定されています。
だから、私がタイプする時
rescale 0,3019
画像を30.19%の値に再スケールしようとしています
問題は、そのラインが
echo $newWidth $newHeight
3019倍された値が表示されます。奇妙なことに、最初のエコー
echo $percent
0,3019(正しい値)が表示されます
何が足りないのでしょうか?
答え1
見出しの通り、bash は整数の乗算しかできません。