mrg*_*tag 4 scripting ssh remote rsh
我想弄清楚如何更轻松地管理我的服务器。我想知道是否可以让我的脚本对所有服务器可用,而无需将它们复制到服务器。
它们位于我的计算机(客户端)中,
bash-3.2$ ls -l my_local_script
-rwxr--r-- 1 mario staff 554 Jan 9 13:35 my_local_script
Run Code Online (Sandbox Code Playgroud)
我总是使用 SSH 通过我的终端远程登录
bash-3.2$ ssh root@192.168.56.140
root@192.168.56.140's password:
[root@prodsrvr00 ~]#
Run Code Online (Sandbox Code Playgroud)
一旦我登录到服务器,我想知道是否有任何方法可以执行脚本,就像它在本地可用一样,而无需将其复制到服务器。
[root@prodsrvr00 ~]# my_local_script
Run Code Online (Sandbox Code Playgroud)
由于它是 NAT 网络,因此我无法通过 SSH 返回到我的计算机(客户端)。
要在登录远程服务器后执行此操作,请执行以下操作:
ssh <local_machine_where_script_resides> "cat <Full_path_to_my_local_script>" | bash
用脚本所需的任何解释器替换“bash”
(I wouldn't recommend this way and prefer below)
有一种方法可以在不登录远程机器的情况下执行此操作:
ssh <remote_machine> "bash -s" -- < ./my_local_script "Arg1" "Arg2"
在你的情况下,它是:
ssh root@192.168.56.140 "bash -s" -- < ./my_local_script "Arg1" "Arg2"
我建议,以及寻找到类似的选项puppet,chef,ansible等。
| 归档时间: |
|
| 查看次数: |
363 次 |
| 最近记录: |