我已经设置了ssh代理,并且可以在Bash脚本中运行一些命令来完成在外部服务器上执行操作的任务,例如:
ssh blah_server "ls; pwd;"
现在,我真正想做的是在一个外部服务器上运行许多长命令。把所有这些命令用引号括起来会非常丑陋,我真的宁愿避免多次 ssh 连接以避免这种情况。
那么,有没有一种方法可以在一步中使用括号或类似的东西完成这个任务?我正在寻找以下内容:
ssh blah_server (
ls some_folder;
./someaction.sh;
pwd;
)
基本上,只要解决方案简洁,我就会满意。
编辑
为了澄清,我是在谈论这是一个更大的bash脚本的一部分。其他人可能需要在未来处理该脚本,因此我希望保持它的简洁性。我不想让bash脚本看起来像这样一行:
ssh blah_server "ls some_folder; ./someaction.sh 'some params'; pwd; ./some_other_action 'other params';"
因为它非常丑陋而且难以阅读。
ssh
调用它怎么样? - Nikolai Fetissovscp
、ssh
进行传输和执行。我认为这是最清晰的方式。 - khachik