【问题标题】:Selecting files with current date in file name in WinSCP and PowerShell在 WinSCP 和 PowerShell 中选择文件名中具有当前日期的文件
【发布时间】:2018-07-31 16:31:28
【问题描述】:

我是 WinSCP 和 PowerShell 的新手。
我正在尝试在具有模式 "ABC"+somenumbers+YYYYMMDD+somenumbers.zip

的目录中查找文件
$dt = (Get-Date).ToString('yyyyMMdd') 
$transferOptions.FileMask = ("ABC*>=" "+$dt+".zip")

我无法将任何文件下载到本地目录。 我的文件掩码正确吗?

谢谢
先生

【问题讨论】:

  • 您能否确认这实际上是您所拥有的文件掩码,因为它在我看来好像有错字。此外,> 语法 appears to be 用于文件修改时间,不能在文件名部分中使用。
  • 文件名包含今天的日期,格式为 YYYYMMDD。我不知道 >= 仅适用于修改日期
  • 我怀疑你想要$transferOptions.FileMask = "ABC*$dt.zip"
  • @MartinPrikryl 我想我错过了第二个“*”,但我把它放在了答案中。

标签: powershell winscp


【解决方案1】:

由于日期是文件名的一部分,您不需要在filemask 中使用“>”语法,这将用于文件修改时间。

Powershell 会在双引号字符串 (Variable expansion in strings and here-strings) 内展开变量,因此您可以使用

$transferOptions.FileMask = "ABC*$dt*.zip"

【讨论】:

    猜你喜欢
    • 2016-08-10
    • 2017-05-04
    • 1970-01-01
    • 2014-11-13
    • 1970-01-01
    • 1970-01-01
    • 2020-03-04
    • 1970-01-01
    • 2020-07-30
    相关资源
    最近更新 更多