在第二台服务器上嵌套 ssh 运行命令

j.c*_*con 5 ssh bash

我只能从hostA 到达hostB,我想在hostB 上运行命令。

ssh -t $hostA ssh -t $hostB "

   echo 'Hello World!'

   echo 'Test!'

"
Run Code Online (Sandbox Code Playgroud)

目前,这将连接到主机 A,然后是主机 B,脚本将暂停。一旦我输入 exit (from hostB),我就返回到 hostA,打印 2 个 echo 命令,然后自动从 hostA 退出。

如何在 hostB 上运行命令?

nu1*_*73R 3

使用此处文档更改代码即可sshpass解决问题

ssh -T user@$hostA <<EOA
sshpass -p password ssh  -T user@$hostB <<EOB
echo hello 
EOB
EOA
Run Code Online (Sandbox Code Playgroud)