私はimagemagick合成コマンドで画像の選択を処理するためにシェルスクリプトアクションを使うAutomatorワークフローを作っています。問題が発生しているのは私だけです。ワークフローを実行したときに得られた結果によると、すべてが機能していますが、画像のフォルダに表示されるはずの変更が存在しないことが原因ではないことがわかります。私が使っているimagemagickコマンドはコンソールから正しく機能するので正しいことを私は知っています。 (コンポジットコマンドを出力にエコーして、ターミナルセッションにコピーしました。魅力的に見えました)。ところで:私が作ったストップモーション映画のフェードインを処理するためのワークフロー。はい、私はビデオツールを使って同じことを達成できることを知っていますが、私は出力の画像品質を悪くするためにアクセスできるものを持っています。
これがスクリプトです
imagesCount=$#
rate=$(echo "scale=2; 100/$imagesCount"|bc)
percentage=$rate
for f in "$@"; do
fileName=${f%.*}
composite -blend "$percentage" -size 1280x720 "$f" xc:black -alpha Set "$fileName-1.jpg"
percentage=$(echo "scale=2; $percentage+$rate"|bc)
done
当初、問題の原因はパス内のスペースにあると考えていましたが、ファイルをスペースのないパスに移動することでこの問題を解決しましたが、効果はありませんでした。
この問題がbashコマンドの問題に関連していることはほぼ間違いありませんが、bashはまったくわかりません。これは、bashコマンドスクリプトを書くのは初めてのことです。これを機能させるために。
スクリプト内のエラーが捉えられるほど明白ではない場合、スクリプトをエラーなしで実行してもイメージが処理されない理由を理解できるように、これをデバッグする方法を提案する人がいるでしょうか。
$f
に f
それとも単なる転記ミスですか?またあなたの時価総額 fileName
矛盾しています。
composite
その絶対パスで(実行することによって決定することができますwhich composite
ターミナルで)