如何知道psftp mput是否成功

问题描述 投票:0回答:1

我们每天晚上都会将 .zip 文件推送到 SFTP 服务器一次。但是,有时会失败,并且文件不会最终到达 SFTP 服务器上,我想知道它是否成功。目前尚不清楚失败的原因。

这是我的2个批处理文件的内容:

批处理文件1:

Z:
pushd \\Transfer\PRONTO
"D:\SFTP\psftp.exe" [email protected] -i "D:\SFTP Keys\Puttyprivatekey.ppk" -2 -b "D:\SFTP\Pronto_push_to_SFTP.bat"

del \\Transfer\PRONTO\*.zip
exit

批处理文件2(Pronto_push_to_SFTP.bat):

lcd \\Transfer\PRONTO
cd /pronto/
mput *.zip
exit

我想创建一个日志文件来捕获 .zip 文件是否成功放置到 SFTP 服务器上。如果不成功,请向管理员发送电子邮件通知。

batch-file ftp sftp
1个回答
0
投票

以 OpenSSH

sftp
为模型,
psftp
具有非常相似的错误处理(请参阅检查文件是否已使用 SFTP 成功传输到目的地)。

因此,使用

-b

 开关
,它会在出现任何错误时中止并返回 2
(当无法打开批处理文件时,它会返回 
1
)。

Windows批处理文件也是如此,你可以这样做:

psftp -b ... if errorlevel 1 ( echo SFTP script failed )
    
© www.soinside.com 2019 - 2024. All rights reserved.