我想在多台机器上运行相同的Unix命令集.我知道ssh和下面的东西.我想编写一个shell脚本来执行此操作.我可以访问bash和ksh,我在Linux Red Hat 5上.
ssh root@ip "echo \$HOME"
Run Code Online (Sandbox Code Playgroud)
但是,我有两个问题:
您应该使用基于密钥的身份验证,可能ssh-agent需要记住密钥密码.
您可以 sh -c作为命令调用,并将包含要执行的命令列表的字符串传递给它.ssh在远程计算机上调用shell,因此您可以将命令列表作为字符串传递.
例如:
$ ssh user@ip "echo 'Hello world'; whoami; cd / ; ls"
Run Code Online (Sandbox Code Playgroud)