값이 abc123&zxcv456인 비밀번호 변수 PASS가 있습니다. 아래와 같은 비밀번호 변수를 사용하여 젠킨스에서 SSH를 수행하려고 하면
sshpass -p ${PASS} ssh -o StrictHostKeyChecking=no [email protected] 'echo '${PASS}' | sudo -S docker stats --no-stream'
특수 문자 & 앞의 문자열만 해석되고 PASS 변수의 값이 abc123으로 읽혀집니다. 이 문제를 해결하는 데 도움이 될까요?
추신: 이스케이프 문자 "${PASS}"를 사용해 보았으나 아무 소용이 없습니다.
답변1
Jenkins Pipeline에서 내장된 자격 증명 저장소를 사용하고sshAgent
단계SSH 사용자 이름/비밀번호를 ssh 명령에 전달합니다.
Freestyle 작업에 대한 작업 구성 GUI에도 비슷한 옵션이 있습니다.
답변2
비밀번호를 다음과 같이 정의하십시오.
abc123\&zxcv456