リモートでコマンドを実行し、スクリプトがエラーで終了しない

リモートでコマンドを実行し、スクリプトがエラーで終了しない

最初のパラメータをホスト名として使用し、それに接続していくつかのコマンドを実行し、出力をローカルに保存する簡単なスクリプトがあります。

ただし、誤ったホスト名を渡して接続が失敗するたびにスクリプトを終了する必要があるにもかかわらず、空の/tmp/${1}_output.txtファイルが生成されます。

#!/bin/ksh

set -e

ssh $1 $(which ksh) << 'EOF' | tee /tmp/${1}_output.txt
(run commands on remote server)
EOF

関連情報