用于登录远程服务器并执行进一步命令的 Shell 脚本

用于登录远程服务器并执行进一步命令的 Shell 脚本

我正在用 Shell 脚本自动化一些东西。作为其中的一部分,我需要 shell 脚本来 ssh 到远程服务器,更改远程服务器的主机名,修改文件夹名称并保持其内容不变,然后重新启动服务器。这是我试图执行的代码:

echo "Connecting to $publicip"
ssh -i ./key.txt root@$publicip 'sudo hostnamectl set-hostname autotest$i.domain.com | sudo mv /etc/letsencrypt/live/autotest.domain.com /etc/letsencrypt/live/autotest$i.domain.com | reboot'

我可以看到该脚本能够通过 SSH 连接到服务器,但是一旦连接成功,我就会看到以下输出。并且在检查远程服务器时,上述系列活动并未执行。

Connecting to --.--.---.--
Connection to --.--.---.-- closed by remote host.

有人可以尽早帮我解决这个问题吗?

相关内容