Windows命令行ftp put / upload文件超过1分钟

时间:2012-05-03 09:01:09

标签: ftp cmd

我有以下批处理文件:

open <ip>
username
password
bin
lcd C:\FTP_OUT\
prompt
mput *.PDF
ascii
mput *.XML
bye

如何更改它以仅将超过1分钟的文件上传到FTP服务器?

1 个答案:

答案 0 :(得分:0)

Windows ftp.exe不支持基于文件时间戳的任何文件选择。

您所能做的就是生成一个临时上传脚本,其中包含要上传的明确文件列表。您可以使用PowerShell脚本生成临时脚本(在纯批处理文件中实现将非常困难)。

更简单的解决方案是使用支持根据文件时间戳选择文件的FTP客户端。

例如,使用WinSCP FTP/SFTP client,您可以使用以下批处理文件:

@echo off
winscp.com /log=upload.log /command ^
  "open ftp://username:password@example.com/" ^
  "lcd C:\FTP_OUT" ^
  "put *.PDF<1N" ^
  "put -transfer=ascii *.XML<1N" ^
  "exit"

文件掩码中的<1Na time-constraint,用于选择仅超过一分钟前创建或修改的文件。

另请参阅converting Windows ftp.exe scripts to WinSCP scripts指南。

(我是WinSCP的作者)