
winscp.com
Windows 10에는 인터넷의 SFTP 서버에 단일 파일을 호출하고 업로드하는 BAT 스크립트가 있습니다 . 결과를 XML 파일에 기록합니다. 단일 파일에 대한 전송이 성공했을 때의 출력은 다음과 같습니다.
<?xml version="1.0" encoding="UTF-8"?>
<session xmlns="http://winscp.net/schema/session/1.0" name="[email protected]" start="2020-02-08T10:04:41.012Z">
<upload>
<filename value="c:\sftp\test.txt" />
<destination value="/Data/test.txt" />
<result success="true" />
</upload>
<touch>
<filename value="/Data/test.txt" />
<modification value="2020-02-08T03:52:28.000Z" />
<result success="true" />
</touch>
</session>
파일을 수동으로 다운로드하고 문제가 없는지 확인할 수 있지만 로그를 보고 전송이 성공했는지 어떻게 확인할 수 있습니까?
거기에는 두 가지 요소가 있으며 upload
둘 touch
다 반환되었습니다. result success = true
이는 무엇을 의미하며 언제 전송이 실제로 성공적인 것으로 간주됩니까? 이 경우 둘 다 True여야 합니까?
나는 이것에 대해 완전히 새로운 것이므로 매우 기본적인 쿼리일 수 있지만 단지 전송이 성공했는지 확인하기 위해 파일을 다운로드하고 싶지는 않습니다.
Winscp.com에 대한 첫 번째 매개변수는 스크립트 파일이고 두 번째 매개변수는 다음과 같은 XML 파일입니다./xmllog="C:\SFTP\mylog.xml"
답변1
전송이 성공했는지 확인하기 위해 XML 로그를 구문 분석할 필요가 없습니다.
WinSCP 종료 코드를 테스트하기만 하면 됩니다. WinSCP는 모든 것이 정상이면 종료 코드 0을 반환하고, 그렇지 않으면 1을 반환합니다.
WinSCP FAQ도 참조하세요.해당 스크립트가 성공적으로 완료되었는지 어떻게 알 수 있나요?