システムが私に与えたエラーをファイルに入れようとしています。次のスクリプトがあります。
#!/bin/bash
logfile="output.log"
echo "Starting" > $logfile
./cpi 2>&1 >> $logfile
echo "Ending" >> $logfile
exit
そして、ファイルで得られる出力output.log
は次のとおりです。
Starting
Ending
しかし、画面には次のように表示されます。
./cpi: error while loading shared libraries: libmpich.so.3: cannot open shared object file: No such file or directory
エラーは意図的なものです。#LD_LIBRARY_PATH からそのライブラリへのパスを取得しました。要点は、スクリプトが別のマシンで実行され、ライブラリがそこにない場合、画面に表示されるエラーを取得したいということです。
私自身のプログラムの出力も必要なので、2>&1 >> $logfile
その実行後に必要です。
何かご意見は?