스크립트에서 scp
사용하지 않고 명령을 실행 해야 합니다.expect
scp를 비밀번호와 함께 사용하는 방법은 무엇입니까? 다음 코드를 시도했습니다.
HOST=lnx1
USERNAME=user
PASSWORD=pwd
PATH=/sample/data/
FILE=$1
scp $FILE $USERNAME:'$PASSWORD'@$HOST:$PATH
sshpass -p '$PASSWORD' scp $FILE $USERNAME@:$PATH
에러 메시지:
scp: command not found
sshpass: command not found
이걸 어떻게 구현하나요?
답변1
PATH
변수를 로 설정 했습니다 /sample/data
. 변수의 이전 내용을 PATH
덮어썼습니다. 따라서 스크립트가 해당 항목을 찾았 /sample/data
으나 찾지 못해 오류 메시지가 표시됩니다 scp
.sshpass
PATH
변수 이름을 다른 이름으로 변경해 보세요 . 예를 들면 다음과 같습니다.
REMOTE_PATH=/sample/data/
scp $FILE $USERNAME:'$PASSWORD'@$HOST:$REMOTE_PATH
sshpass -p '$PASSWORD' scp $FILE $USERNAME@:$REMOTE_PATH
그래도 작동하지 않으면 전체 경로 이름을 scp
스크립트 에 입력해 보십시오 sshpass
.