登录到另一台服务器并运行命令-使用脚本

时间:2019-07-31 15:08:23

标签: bash shell ssh sh

我想运行一个脚本a.sh,它将执行以下步骤-

  1. 运行一些命令
  2. 在同一服务器-server01中调用另一个shell脚本b.sh
  3. b.sh将登录到另一台服务器-server02并运行随后的命令。

我可以正确执行直到第2步。在第3步中,我可以转到另一台服务器,但是它在那里停止。它不会执行后续步骤。

看看这两个脚本。

a.sh

cd ~/sample/home && python helloworld.py
#!/bin/bash
cd ~/sample/ && ./b.sh

b.sh

ssh username@server02.com
echo "In server02"

a.sh和b.sh都在同一服务器上,即server01.com。在这里,我希望a.sh在server01中运行,然后b.sh在server01中运行。一旦b.sh运行,它应该对server02进行ssh并打印“ In server02”。

我可以做到SSH到server02。之后,它不会在server02中打印“ In server02”。

有办法吗?

1 个答案:

答案 0 :(得分:0)

使用heredoc

ssh username@server02.com << EOF
  echo "In server02"
EOF