gpt4 book ai didi

shell - 如何编写将在通过 ssh 连接的设备上执行的命令?

转载 作者:行者123 更新时间:2023-12-02 14:39:13 25 4
gpt4 key购买 nike

所以,我已经通过 ssh 与远程机器建立了连接;现在我想做的是执行一些命令,抓取一些文件并将它们复制回我的主机。

我知道我可以跑

ssh user@host "command1; command2;....command_n"

然后关闭连接,但是如果不使用上述语法,我该如何做呢?我有很多复杂的命令,其中包含一堆引号和字符,这将是一团糟。

谢谢!

最佳答案

我的直接想法是为什么不创建一个脚本并将其推送到远程计算机以使其在文本文件中本地运行?如果你不能出于任何原因,我会摆弄这个,我认为你可能会用 HEREDOC 做得很好:

ssh -t jane@stackoverflow.com bash << 'EOF'
command 1 ...
command 2 ...
command 3 ...

EOF

它似乎做了正确的事情。使用您的heredoc 以确保您的报价安全,但这会变得很棘手。我唯一能提供的其他东西(我完全不推荐这个)是你可以使用像 perl 这样的玩具。读写 ssh像这样的过程:
open S, "| ssh -i ~/.ssh/host_dsa -t jane@stackoverflow.com bash";
print S "date\n"; # and so on

但这是一种非常糟糕的处理方式。请注意,您可以使用其他语言执行此操作。

关于shell - 如何编写将在通过 ssh 连接的设备上执行的命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16976970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com