通过SSH在远程计算机上执行远程脚本


2

我在机器B上有一个bash脚本,我想在机器B上运行。我现在正在使用机器A.这可能吗?

到目前为止,如果脚本使用以下命令存在于机器A上,我只能设法做到这一点:

ssh user@machineb 'bash -s' < /path/machinea/script.sh

我不想在本地复制这个远程脚本。有没有办法通过本地机器通过SSH在远程计算机上运行此远程脚本?


与运行本地脚本的方式相同: ./path/myscript
jiggunjer

Answers:


5

man ssh

如果 命令 如果已指定,则在远程主机上执行,而不是在登录shell上执行。

哪里 命令 是ssh的最后一个参数

因此,您唯一需要做的就是致电:

ssh user@machineb 'bash -s /path/to/script'

基本上,您在上面提供的命令将机器A脚本重定向到ssh,ssh通过网络传输脚本并在机器B中运行它。在机器B本地运行脚本/命令更加麻烦。


它不适合我 -s 旗。作为 bash 手册说,它等待标准输入。我不得不排除 -s 用于执行远程脚本的标志。
Gihan
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.