sshとscpを複数回使用するサーバーでデータをバックアップするためのスクリプトを作成しています。私の秘密鍵はパスワードで保護されていますが、使用している環境にはSSHエージェントはありません。
スクリプトが次のように起動されたことを確認するために、スクリプトに条件を追加したいと思います。この回答。実行中のSSHエージェントがない場合exec ssh-agent <original script relaunch>
。
どうすればいいですか?
答え1
スクリプト自体をラップするには、$0
(プログラム/スクリプト名)と$@
(拡張引数リスト:と同じ"$1" "$2"...
)を使用します。
if something; then
exec ssh-agent "$0" "$@"
fi