원격 서버에 로그인하고 추가 명령을 실행하는 쉘 스크립트

원격 서버에 로그인하고 추가 명령을 실행하는 쉘 스크립트

쉘 스크립트를 사용하여 일부 작업을 자동화하고 있습니다. 이 작업의 일부로 원격 서버에 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.

누군가 이 문제를 가능한 한 빨리 해결하도록 도와줄 수 있습니까?

관련 정보