シェルスクリプトのエラーチェックについて意見を頂きたいです。私がサポートしているシステムには、別のアプリケーション (Java) によって複数回実行される単純なシェル スクリプトが含まれています。java は、ftp 接続のオープンを実行するシェル スクリプトを呼び出し、ローカル ディレクトリを移動し、mget コマンドを実行し、最後に bye コマンドを実行します。次に、$? をチェックします。bye コマンドの後。
そもそも、bye コマンドのみを常にチェックする必要があるため、このコードは疑わしいことを知っていますが、断続的にエラーが発生します。UNIX 管理者に、システムにログ エラーがあるかどうかを確認するように既に依頼しましたが、ログ エラーはないとのことでした。
基本的に、スクリプトの一般的な構造は次のとおりです。
sftp -oPort=<port forwarding port> <ip and user> <<==
lcd <some variable>
mget <some variable>
bye
rtn=$?
if [ ${rtn} != 0 ]
then
exit 1
fi
exit 0
なぜ$のアイデアはありますか?時々ゼロ以外を返しますか?