-2

我正在寻找递归文件夹结构(ex.F:\Directory\layer1\layer2\layer3)并找到所有具有指定文件扩展名的文件(例如“.dll,.txt”)。然后我需要将列出/找到的文件复制到目标文件夹。

如果有人可以向我发送一个可以做到这一点的好的 PowerScript,我将不胜感激。

我有一个包含大约 1,000 个文件夹和 5,000 个文件的驱动器,因此这可能会为我节省一两天的手动工作。:)

谢谢你!

4

3 回答 3

1

尝试以下,根据需要修改:

$movetopath = "C:\new folder\"
New-Item -Path $movetopath -ItemType Directory -Force
$files = Get-ChildItem -Path F:\ -Recurse
$files | Where-Object {$($_.Extension -eq ".dll") -or $($_.Extension -eq ".txt")} | ForEach-Object {Copy-Item $_ -Destination $movetopath}
于 2013-01-15T17:33:26.247 回答
0

我建议您先使用 find 命令,然后将 find 命令的输出通过管道传输到 tar。将存档解压缩到目标文件夹。

于 2013-01-15T15:46:36.390 回答
0

尝试类似的东西

Get-ChildItem -Path $path -Recurse | where { !$_.PSIsContainer } | where { $_.Extension -eq ".txt" -or $_.Extension -eq ".log" } | Copy-Item -Destination $dest

这可能比 robocopy 慢。另外,下次请表现出一些努力并提出一个问题,而不是一个完整的解决方案。这不是网店。

于 2013-01-15T17:31:01.453 回答