GNU/Linux >> Linux の 問題 >  >> Linux

Sshpassの複数のコマンド?

閉鎖。 この質問はトピックから外れています。現在、回答を受け付けていません。

この質問を改善したいですか? 質問を更新して、UnixおよびLinuxStackExchangeのトピックになります。

2年前に閉鎖されました。


この質問を改善する

sshpassで複数のコマンドを使用する方法はありますか 、異なる組み合わせで試しましたが、エラーが発生します。

$ sudo sshpass -p $password ssh -t -oStrictHostKeyChecking=no [email protected]$ipaddress << EOF
  command_one
  command_two
  command_three
EOF

正確で正確なコマンドは何ですか。可能であれば例を教えてください。

承認された回答:

ソリューションはsshpassの有無にかかわらず機能します。機能しない場合は、他に問題がある可能性があります。

また、常にすべての変数を引用する必要があることに注意してください。

さらに、stricthostkeycheckingを軽く無効にしないでください。ホストキーが頻繁に変更される場合は、サーバーが危険にさらされている可能性があります

ただし、目標を達成するためのいくつかの方法は次のとおりです。

コマンドセパレータを使用する(; && ||

sshpass -p "$password" ssh -t -oStrictHostKeyChecking=no "[email protected]" 'command_one; command_two; command_three'

ヒアドキュメントの使用(リモートホストで変数/コマンド置換を展開するための単一引用符EOF):

sshpass -p "$password" ssh -t -oStrictHostKeyChecking=no "[email protected]" <<EOF
  command_one
  command_two
  command_three
EOF

別のファイルを使用する:

file.sh

command_one
command_two
command_three

次に、次のように実行します:

cat file.sh | sshpass -p "$password" ssh -t -oStrictHostKeyChecking=no "[email protected]"

sshトンネルの使用:

sshpass -p "$password" ssh -f -L 3306:localhost:3306 "[email protected]" sleep 300 # This will open a tunnel to the remote host and hold it open for 5 minutes
ssh -T "[email protected]" 'command_one'
ssh -T "[email protected]" 'command_two'
ssh -T "[email protected]" 'command_three'

Linux
  1. Unix Sed チュートリアル:複数の Sed コマンドを実行する方法

  2. 11 Linux で便利な「ssh」および「scp」コマンド

  3. 複数の scp スレッドを同時に実行する

  1. ターミネーターを使用して複数のSSHセッションにコマンドを送信する

  2. sshpassを使用したLinuxでのSSHパスワードの自動化

  3. Ssh – Ssh / scp / sftpユーザーをディレクトリに制限しますか?

  1. 疑わしいSshコマンドを理解していますか?

  2. Ssh –複数のホストを介したScp?

  3. Sshに接続したらシェルコマンドを続行しますか?