SSH 실행 시 디렉토리 변경 문제

SSH 실행 시 디렉토리 변경 문제

다음 시나리오가 있습니다. 다른 원격 컴퓨터에서 bash 스크립트가 실행 중입니다.

SSH 명령은 다음과 같습니다

ssh [email protected] 'bash -s' < test.sh

테스트 파일

#/bin/sh
bash ./trigger.sh

Trigger.sh(원격 서버)

docker build -t nginx .

스크립트를 실행하기 전에 디렉토리를 변경해야 합니다 trigger.sh. 예를 들어 다음과 같습니다.

ssh [email protected] 'cd /pipeline' 'bash -s' < test.sh 

cd를 사용해 보았지만 bash 줄 0:cd: 인수가 너무 많습니다.라는 오류가 발생했습니다.

이를 달성하는 방법이나 위 상황에 대한 다른 방법이 있는지 도움을 주시면 감사하겠습니다.

답변1

cdSSH 명령에 다음 명령을 추가할 수 있습니다 .

ssh [email protected] 'cd /pipeline && bash -s' < test.sh 

또는 호출하는 스크립트에 추가할 수 있습니다. 따라서 다음 중 하나를 수행하십시오 test.sh.

#/bin/sh
cd /pipeline
bash ~/trigger.sh

또는 trigger.sh:

cd /pipeline
docker build -t nginx .

관련 정보