在Windows中通过sftp获取文件

我想用WinSCP(命令行)从Windows连接到Linux机器。 我想获得日志。

在linux机器上有日志

/var/log/application/ 090701.log 090702.log 090703.log 090704.log 090705.log 

winscp sftp:// account:pass @ machine:22如何有效地获取日志?

如果您正在使用脚本,我认为您应该阅读WinSCP文档。 上次我看它包含示例,显示如何做你想要的。

当然,如果您使用GUI,只需将它们拖到WinSCP界面中的Windows文件夹即可。

我有一个类似的解决scheme,使用winscp脚本,我看起来像这样:

winscp脚本:

 option batch continue option confirm off open logs:*******@10.xxx synchronize remote "c:\daily_logs\*" ./81/ synchronize remote "c:\daily_logs\" ./81/ close exit 

我使用的iCronService,它适用于我试过的每个版本的Windows,包括基于x64的,这就是我的crontab看起来像:

crontab中:

00 22 * * * cmd /c "winscp /console /script=c:\bin\scplogs /log=LOG_OF_SCP.LOG"

也可以先压缩日志以节省一些时间,带宽和空间。 当然,这不是最优雅的解决scheme,因为密码被硬编码到scp脚本中,但是如果你喜欢的话,可以用键代替。

您也可以使用psftp.exe来执行这样的命令:

  psftp.exe用户名@服务器-be -pw user_password -bc:\ script.txt“ 

Script.txt可能包含例如:

液晶电视c:\ my_backup
 get / var / log / application / *