
원격 서버에 스크립트를 scp하고 원격 서버에 ssh(이미 설치된 ssh 키 사용)를 실행하고 업로드된 스크립트를 실행한 다음 완료되면 원격 스크립트를 삭제하는 bash 스크립트를 생성하려고 합니다. Bash 스크립트 내에서 SSH 세션을 실행하는 방법이 명확하지 않습니다. 명령줄에서 이 작업을 수행하는 데 사용하는 명령은 다음과 같습니다.
scp my_script.sh [email protected]:/usr/home/user/
ssh [email protected]
>sh my_script.sh
>rm myscript.sh
>exit
명령 목록의 SSH 부분을 어떻게 스크립팅합니까? 감사해요!
답변1
ssh는 원격 시스템에서 인수로 전달된 명령을 실행합니다. 다음은 원하는 작업을 수행해야 합니다.
ssh [email protected] 'sh my_script.sh; rm my_script.sh'
답변2
파일 복사를 건너뛰고 삭제하고 이와 같은 작업을 수행할 수도 있습니다.
cat my_script.sh | ssh user@host bash
답변3
SSH를 통한 시스템 관리자용 Python 라이브러리인 Fabric의 사용을 조사할 수도 있습니다.
http://docs.fabfile.org/0.9.1/
시작하기는 매우 간단하지만 특히 여러 서버에서 매우 강력합니다.