スクリプトが失敗したときのSSH終了を防ぐ方法

スクリプトが失敗したときのSSH終了を防ぐ方法

私の基本的なUnix / Linuxスクリプト技術と不器用な英語を許してください。

Linux VMでスクリプトをテストしているので、work.shVMにsshを接続する必要があります。

ssh [email protected] 

自分のアクセス権がある場合は、自分のホームフォルダからスクリプトを実行する必要があります。

[[email protected] ~]. work.sh param1 param2

バッチスクリプトで問題が発生するとエラーが表示されますが、VM / sshセッションでも追い出されます。

Connection to [email protected] closed.

だからもう一度ログインする必要があります。

nohupを試しましたが、エラー/ログもコンソールに出力したいと思います。この状況を処理するより良い方法は何ですか

ベストアンサー1

set -e台本にそのような内容があるようですね。この設定が有効な状態でソーススクリプト(を使用して実行. scriptname)でエラーが発生した場合は、シェルを閉じることが予想される動作です。

スクリプトについての知識がなければ、スクリプトを実行しないと確信できませんが、タスクを. 実行する珍しい方法です。

実行してみましょう。

./work.sh param1 param2

スクリプトの実行を妨げる不足している実行ビットを克服したい場合は、次のことを試すことができます。

$SHELL ./work.sh param1 param2

あるいは、追加のシェルを起動して今のように実行することもできます。これにより、エラーメッセージが表示されることがあります。

$SHELL
. work.sh param1 param2

おすすめ記事