쉘 스크립트에서 명령을 찾을 수 없습니다

쉘 스크립트에서 명령을 찾을 수 없습니다

스크립트에서 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.

관련 정보