シェルスクリプト出力がファイルに正しく書き込まれません。

シェルスクリプト出力がファイルに正しく書き込まれません。

プログラムの出力をテキストファイルに入れようとしています。 echoコマンドをファイルに正しく追加しますが、imagemagick "compare"コマンドはそうではありません。単に比較方法を通じて端末に返されるSTOUDの「PSNR値」である。

このコマンド出力をテキストファイルに追加する方法はありますか?また、「./script.sh > test.txt」を使用してスクリプトを呼び出すと、エコーをファイルとして印刷し、結果を端末と比較する以外は何も印刷しません。

これは私のコードの一部です。

ls images/toconvert/ > lsout.txt

while read LINE
do
    echo ====================== $LINE ==================== >> psnrdiff.txt
    echo Jpeg2000 >>  psnrdiff.txt
    compare -metric PSNR images/toconvert/$LINE images/converted/$LINE.jp2 images/psnrDiffs/$LINE.jp2.png >> psnrdiff.txt
done < lsout.txt

ベストアンサー1

さまざまなimagemagickコマンド出力を置き換えSTDERRますSTDOUT

出力キャプチャSTDERRにリダイレクトできます。STDOUT

compare -metric PSNR .... >> psnrdiff.txt 2>&1

おすすめ記事