我想复制文件夹EXCLUDING具有某些文件夹名称的文件夹

时间:2015-10-09 19:46:11

标签: powershell-v2.0

我有一个名为“Testnames”的文件夹,在两个名为“Bunny,Bugs_”和“Lightyear,Buzz”的文件夹中。

使用命令:

Get-ChildItem C:\Users\Galen\Desktop\Testnames -Recurse -Exclude '_'

我明白了:

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         10/9/2015  11:43 AM            Lightyear, Buzz

完美!

但是当我使用命令时:

Copy-Item C:\Users\Galen\Desktop\Testnames -Exclude '_' -Recurse C:\Users\Galen\Testfolder

Bug和Buzz的文件夹都被复制到Testfolder。我需要对复制Buzz的文件夹实施哪些更改?

1 个答案:

答案 0 :(得分:0)

运行Get-ChildItem而不使用参数-Recurse来获取根文件夹。过滤该列表,列出名称中没有下划线的项目。然后递归复制剩余的项目。

Get-ChildItem 'C:\Users\Galen\Desktop\Testnames' |
  Where-Object { $_.Name -notlike '*_*' } |
  Copy-Item -Destination 'C:\Users\Galen\Testfolder' -Recurse