스크립트 파일에서 SFTP에 get 명령을 제공하지만 대화형 비밀번호 로그인을 유지합니다.

스크립트 파일에서 SFTP에 get 명령을 제공하지만 대화형 비밀번호 로그인을 유지합니다.

SFTP 연결만 허용하고 비밀번호를 통해서만 연결할 수 있는 FTP 서버가 있습니다.

서버에 파일 목록이 있습니다. 여러 디렉터리에 수백 또는 수천 개의 파일이 있습니다. 이 디렉토리에는 필요하지 않은 많은 파일이 포함되어 있습니다. 그래서 목록에 의해 제어되는 파일을 하나씩 가져와야 합니다.

내가 사용하고 싶은 접근 방식은 다음 목록을 포함하는 스크립트를 만드는 것입니다.

get -p source_file dest.dir

sftp명령 - 명령 에 입력합니다 . 하지만 대화형 모드로 서버에 연결하면 sftp목록을 사용할 수 없습니다.

배치 모드에서는 sftp원격 시스템이 비밀번호가 아닌 식별을 제공해야 합니다.

목록을 통해 파일을 가져오는 방법은 무엇입니까?

답변1

sftp입력 리디렉션을 사용하면 배치 모드를 사용하지 않고도 명령을 제공할 수 있습니다.

sftp [email protected] < commands.txt

이렇게 하면 대화형 비밀번호 인증을 계속 사용할 수 있습니다.

$ sftp [email protected] < commands.txt
[email protected]'s password:
Connected to [email protected].
sftp> get -p source_file dest
Fetching /path/source_file to dest
/path/source_file                                        100% 9474   975.4KB/s   00:00
sftp>

관련 정보