微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

按文件名删除文件以确定 WinSCP

如何解决按文件名删除文件以确定 WinSCP

我们有一个供应商通过 SFTP 服务器向我们发送文件。我需要将这些下载到 Windows 服务器。我正在使用一个简单的 WinSCP 脚本连接到服务器,删除文件,然后下载最新文件

无论出于何种原因,供应商不断发送带有更新时间戳的旧文件。所以我使用了一个 WinSCP 命令,如:

rm *<3D

这会删除时间戳超过 3 天的文件,但他们向我发送了超过一个月但带有更新时间戳的文件。因此,他们发送了数百个文件而不是少数文件。我需要将六个不同区域的这些文件下载到不同的服务器。连接很慢,我需要每小时执行一次。当有数百个文件时,有时连接超时显示文件夹,或者我没有及时下载所有文件

我一直要求供应商解决问题,停止向我发送带有新时间戳的旧报告,但几个月后,他们仍然没有解决问题。

我可以创建一个 Powershell 或 VBS 脚本来连接,按文件名解析文件以确定日期,将其与服务器日期进行比较,然后在我尝试下载该文件夹中的所有内容之前使用它来删除文件吗?

例如,我有一个名为“agentScheduleSummary_2_0527210600.txt”的文件

末尾的数字串是一个 10 位数字,每个数字有两位:

  • MM = 月
  • DD = 天
  • YY = 年
  • HH = 小时
  • MI = 分钟

在纯粹的 Powershell 或 VBS 脚本中,我可以解析文件名以获取日期,但是我如何将其与 WinSCP 脚本结合使用以根据文件删除超过 3 天的文件,然后仅下载过去的文件3 天的文件(即使如此,最好进行同步或“get * -resume -neweronly”以仅下载我尚未在本地下载的绝对最新文件

谢谢!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。