繁体   English   中英

使用 PowerShell 匹配文件名并复制

[英]Match file name and copy using PowerShell

我正在努力让这个简单的 PowerShell 脚本工作。 我已经google了,但我找不到答案。

如您所见,我正在指定源和目标位置。

$filedate 变量正在执行 dateadd 以获取昨天的日期,因为文件名包含日期。

$filter 变量具有我正在搜索的字符串,包括日期部分。

Get-ChildItem 命令独立工作,但当我应用过滤器时,它什么也不返回。 我缺少什么让这个工作?

$source = "C:\MSSQL.1\Backup\"
$destination = "D:\MSSQL.2\Backup\"
$filedate = (get-date).AddDays(-1).tostring('yyyyMMdd')
$filter = "FULL_(local)_Product_" + $filedate + "*"
Get-ChildItem -Path $source -filter $filter | Copy-Item -Destination $destination

尝试使用Where-Object cmdlet-match运算符过滤文件列表:

$source = "C:\MSSQL.1\Backup\"
$destination = "D:\MSSQL.2\Backup\"
$filedate = (Get-Date).AddDays(-1).ToString("yyyyMMdd")
$filter = "FULL_(local)_Product_$filedate"
Get-ChildItem -Path $source | Where-Object { $_.Name -match $filter } | Copy-Item -Destination $destination

如果您仍然没有得到任何结果,那么我们需要查看过滤器本身。

相关资源:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM