FTP를 SFTP로 대체하여 파일 전송 - PSFTP.EXE만 해당

FTP를 SFTP로 대체하여 파일 전송 - PSFTP.EXE만 해당

나는 현재 서버 FTP'ing에서 유닉스 박스로 파일을 보내고 있습니다 windows. 스크립트의 다음 섹션을 변경하고 ftp 프로세스를 sftp.

@echo off
echo user %user%> ftpcmd.dat
echo %password%>> ftpcmd.dat
echo bin>> ftpcmd.dat
echo put %filetobeuploaded% %filepath%%File%>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat %host%
del ftpcmd.dat
:END

PSFTP.EXE내 Windows 디렉토리에 설치 했습니다 . 이를 사용하면 SFTP로 파일을 보낼 수 있습니까?

ftp -n -s:ftpcmd.dat %host%라인을 SFTP로 교체하려면 어떻게 해야 합니까 ? 이런 일을 할 수 있다는 것을 이해합니다....

CALL PSFTP.EXE [email protected] ....

아는 사람이 있으면 완료하도록 도와주세요. 내가 어떤 주장을 펼칠 것인가? 사용자, 비밀번호, 원격 디렉터리, 호스트 세부 정보는 속성 파일에 보관됩니다. 비밀번호 대신 키를 사용하려고 합니다. 기존 ftpcmd.dat 인수를 psftp에 전달할 수 있습니까?

답변1

WinSCP를 사용할 수도 있습니다. SFTP와 스크립팅을 모두 지원합니다.

참조Windows FTP 스크립트를 WinSCP SFTP 스크립트로 변환하기 위한 가이드.

스크립트는 다음과 같습니다:

open sftp://%user%:%password%@%host%
put -transfer=binary %filetobeuploaded% %filepath%%File%
exit

다음과 같이 스크립트를 실행할 수 있습니다(에 저장된 경우 script.txt).

winscp.com /script=script.txt

( 와 달리 ftp.exe) 환경 변수는 WinSCP 스크립트에서도 확인됩니다.

개인 키 파일을 사용하려면 다음을 사용하십시오.

open sftp://%user%@%host% -privatekey=path\key.ppk

(저는 WinSCP의 저자입니다)

관련 정보