スクリプトをリモートで実行し、SSH自動ログインでローカルで結果を使用する

スクリプトをリモートで実行し、SSH自動ログインでローカルで結果を使用する

ServerAからServerBに接続し、Oracleデータベースの状態とPendingLogsを確認し、結果を記録し、ServerAで結果を使用し、serverAの結果と比較し、serverAからログを生成します。

使ったssh -q [email protected] sh -s < /root/script.sh > /root/output.txt

ただし、まだパスワードを手動で入力する必要があります。

  1. インタラクティブログインをオフにする方法はありますか?

  2. スクリプトファイルをどのように実行しますかspawn ssh

答え1

1. 対話型ログインをオフにする方法はありますか?

はい、公開鍵認証を使用するか、sshpassパスワードを入力

2-spawn sshでスクリプトファイルを実行するには?

はい、使用してくださいexpectスクリプト。 ()内の他のスクリプトを実行するには、特殊文字()をエスケープする必要がawkあります。\$

答え2

実際、最初の質問の場合、対話型ログインをオフにする必要はありませんが、次のようにします。ザクゼ、で説明されているように、sshpassまたは公開鍵認証を使用できます。私のブログ。公開鍵認証に関するもう一つの良い参考資料があります。ここ。 sshpassは次の形式で使用できますが、最初はシステムにsshpassをインストールする必要があります。

コマンド形式:

sshpass -f password_file ssh user_login@ip_address_of_the_server

関連情報