4

我正在尝试使用 bash 编写一个 shell 脚本。我有多台服务器,每台服务器上都运行着多个应用程序。每台服务器也有特定的应用程序脚本来检查/停止/启动等。我想做的就是,做一个 ssh 并连接到远程服务器。我也能够成功完成并执行命令..

在某些情况下,我需要检查远程机器上的某些进程状态,应用程序特定的脚本已经这样做了。但是当我尝试执行该脚本时使用我的 ssh 我没有得到任何信息(它被执行但没有传递任何信息)。如何从远程主机获取信息并在此处显示在本地主机上。

对此的任何帮助都非常感谢。

问候, 森尼

4

1 回答 1

7

您可以通过将命令作为字符串传递给 ssh来运行远程命令并在本地获取结果。

在您的脚本中,您可以执行以下操作:

CMD_OUT=$(ssh user@remote_host "/path/to/script argument")

该命令将远程运行,输出存储在CMD_OUT变量中。然后,您可以解析脚本中的输出以获得所需的结果。

为了简化脚本的使用,您可能需要设置无密码 ssh,这样您就不必在每次脚本尝试运行远程命令时都输入密码。

于 2011-02-03T11:20:33.200 回答