如何在Powershell中根据文件名复制文件



我正在尝试从包含特定数字的大目录中选择文件。现在我有这个。。它是复制目录中的所有文件。。它应该是一个简单的小脚本。。然而它让我发疯了。。

$files=Get-Content nametofind.txt
ForEach($file in $files){
Copy-Item "source*.xml" -Destination "selected"  | where{$_.name -contains $($file)} 
}

我错过了什么?

文本文件提取:

27216
27658
27716
27793
27961
27975
28599
28665
28931
29076
29077
29079
29080
29582

这种情况持续约2500行

我正在搜索的文件名是格式的

L_20211103_110803_8540_77498.xml

扩展名之前的文件名的最后一段是感兴趣的段。

感谢

您可以通过在Copy-Item命令中使用通配符来保持简单:

$files=Get-Content nametofind.txt
ForEach($file in $files){
Copy-Item "source*$file*.xml" -Destination "selected"
}

使用CCD_ 3命令的CCD_。

最新更新