将最新的文件夹中的最新文件上传到FTP服务器上。

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

我正在用Window任务调度器和WinSCP运行一个任务。基本上我想做的是每天下午1点上传最新的文件(在任务调度器中完成),问题是每天都会有一个新的文件夹在 F:\Satellite_Imagery\goes16\fd\NOMAP\todays 日期(2020-05-12, 2020-05-13等)如何才能让脚本自动找到最新的文件夹,然后找到该文件夹中最新的文件?

这是我运行的任务代码(没有找到最新文件夹的方法)。

/log="C:\Users\Myuser\Documents\WinSCP.log" /ini=nul /command "open ftp://Username:[email protected]" "put -latest F:\Satellite_Imagery\goes16\fd\NOMAP\2020-05-12\*  /public_html/GOES16DATA/" "mv public_html/GOES16DATA/GOES*.jpg public_html/GOES16DATA/goestoday.jpg" "exit"
batch-file ftp winscp
1个回答
0
投票

使用WinSCP脚本,可以上传指定文件夹中的最新文件(你现在所做的),也可以上传最新的文件夹。但不能上传最新文件夹中的最新文件。


虽然,如果你知道文件夹名称是今天,你可以用 %TIMESTAMP% syntax 来识别该文件夹(然后是 -latest 开关 来查找该文件夹中的最新文件)。)

"put -latest F:\Satellite_Imagery\goes16\fd\NOMAP\%%TIMESTAMP#yyyy-mm-dd%%\*  /public_html/GOES16DATA/"

如果你真的需要找到最新的文件夹,你将不得不使用更强大的语言。你可以使用 WinSCP .NET汇编 从例如 PowerShell脚本.

你可以根据这篇文章开始。上传最新的文件. 你只需要重复选择代码(Get-ChildItem ... Sort-Object ... Select-Object)为两个级别。

© www.soinside.com 2019 - 2024. All rights reserved.