2017-12-20 90 views
1

WinSCP를 사용하여 원격 SFTP 서버에 파일을 업로드하려고합니다. /command을 사용할 때도 작동하지만 동일한 인수를 /script 인수를 사용하는 스크립트 파일에서 사용할 경우 실패합니다. 아래는 /command 인수의 cmd 스크린 샷입니다.WinSCP를 사용하는 SFTP 전송은/command에서 작동하지만/script에서는 실패합니다.

c:\winscp>WinSCP.com /command "open ftps://user:[email protected]/" "put filename.xml" "exit" 
Connecting to sf-ftp.ebiaas.com:990 ... 
TLS connection established. Waiting for welcome message... 
Connected 
Starting the session... 
Session started. 
Active session: [1] [email protected] 
filename.xml   |   7 KB | 33.6 KB/s | binary | 100% 

그러나 /script을 사용하여 동일한 작업을 수행하면 오류가 발생합니다.

c:\winscp>WinSCP.com /script="C:\Development\UploadData.txt" /log=log.txt 
Connecting to sf-ftp.ebiaas.com:990 ... 
TLS connection established. Waiting for welcome message... 
Access denied. 
Authentication failed. 

스크립트 파일 UploadData.txt 내용은 다음과 같습니다 뭔가를 누락되거나 잘못된 방법으로 WinSCP에 클라이언트를 사용하고있는 경우

open ftps://user:[email protected]/ 
put filename.xml 
exit 

나는 확실하지 않다. here을 읽었지만 매핑 된 드라이브의 파일에 오류가 발생하면 액세스가 거부됩니다. 그러나 두 시나리오 모두 실패했을 것입니다. 다른 게시물이 here이지만 확실하지는 않습니다.

도움을 주시면 감사하겠습니다.

+1

'/ loglevel = *'을 사용하여 비밀번호 로깅을 활성화하고 로그 파일을 확인하여 두 경우 모두 동일한 자격 증명이 사용되는지 확인하십시오. –

+0

@ MartinPrikryl 귀하의 제안에 감사드립니다. 나는 파일 경로 문제라고 생각하고 시도했다. 고마워. 그것은 효과가 있었다. – Naphstor

답변

1

/log=c:\path\to\log.log 스위치를 사용하여 두 스크립트에서 로깅을 활성화하십시오. /loglevel=* 스위치로 비밀번호 로깅을 활성화하십시오.

https://winscp.net/eng/docs/commandline#logging을보고 차이를 일으키는 것을 찾기 위해 두 로그 파일을 비교합니다.