一部のexecを使用してスクリプトをどのように独自に再実行できますか?

一部のexecを使用してスクリプトをどのように独自に再実行できますか?

sshとscpを複数回使用するサーバーでデータをバックアップするためのスクリプトを作成しています。私の秘密鍵はパスワードで保護されていますが、使用している環境にはSSHエージェントはありません。

スクリプトが次のように起動されたことを確認するために、スクリプトに条件を追加したいと思います。この回答。実行中のSSHエージェントがない場合exec ssh-agent <original script relaunch>

どうすればいいですか?

ベストアンサー1

スクリプト自体をラップするには、$0(プログラム/スクリプト名)と$@(拡張引数リスト:と同じ"$1" "$2"...)を使用します。

if something; then
    exec ssh-agent "$0" "$@"
fi

おすすめ記事