imagemagick スクリプトのディレクトリの for ループを受け入れるシェル スクリプトを使用したいと考えています。シェルスクリプトは次のとおりです。
#!/bin/sh
# ~/scripts/mkhdr.sh
convert -gaussian $1 $2 - | composite -compose overlay $2 - $3
したがって、for ループは次のようになります。
for i in *.(tif|jpg);do;echo converting $i;~/scripts/mkhdr.sh 3 ./$i ./SSP_JPGs/$i:r.jpg;done
スペースのないファイルのディレクトリで正常に動作します。ファイル名にスペースが含まれるディレクトリでは失敗します。
アップデート:
Adrian Frühwirthのおかげで、次のように機能します。
#!/bin/sh
# ~/scripts/mkhdr.sh
convert -gaussian "$1" "$2" - | composite -compose overlay "$2" - "$3"
コマンドライン:
for file in *.(tif|jpg);do;echo converting "${file}";~/scripts/mkhdr.sh 3 "${file}" "/Users/me/Desktop/${file}";done