대화형 로그인으로 스크립트를 만드는 데 문제가 있습니다. 하나 만들었지만 로그인을 요청하지 않고 스크립트를 실행할 때 자동으로 로그인됩니다.
다음과 같은 출력이 필요합니다.
please enter ftp server :
username :
password :
답변1
사용 read
(참조 help read
) - 다음과 같이 수행할 수 있습니다.
read -p "please enter ftp server : " SERVER
read -p "username : " USERNAM
IFS= read -s -p "password :" USERPSS
이 방법으로 변수 및 각각에서 서버, 사용자 이름 $SERVER
및 $USERNAM
비밀번호를 수집합니다 $USERPSS
. ( -s
비밀번호는 으로 인해 에코되지 않으며, IFS=
시작 부분에 공백이 포함될 수 있습니다.)
메시지가 표시될 때 비밀번호가 표시되지 않더라도 다음을 수행할 수 있다는 점을 기억하십시오.해서는 안 된다$USERPSS
이 변수는 ftp "${USERNAM}:${USERPSS}@{SERVER}"
이 컴퓨터에서 실행 중인 다른 사용자에게 표시되므로 유사한 명령에서 직접 사용하십시오(예:). ps
프로그램에 대한 입력으로 직접 비밀번호를 전달하거나 (더 나은 방법) 프로그램이 비밀번호를 요청하도록 하는 것이 더 좋습니다.