这似乎是一个简单的操作,但我无法弄清楚如何让Powershell将整个文件夹结构从一个位置复制到另一个位置但排除一个文件夹(称为“连接”)及其内容。
我尝试过像这样组合Copy-Item和Get-ChildItem
cpi (gci folder1 -Exclude connections) folder2 -recurse
但似乎-recurse参数会覆盖-exclude参数,并且会复制连接文件夹及其内容。如果没有 - 重复我想要复制的文件夹的内容将被忽略。
答案 0 :(得分:2)
我不确定为什么它不起作用,它似乎在我的机器上表现正常。
您可以随时输入Copy-Item
:
Get-ChildItem folder1 | where { !(($_ -is [System.IO.DirectoryInfo]) -and ($_.Name -eq "connections")) } | Copy-Item -Destination folder2 -Recurse
这样做的好处是你可以让PowerShell在输出后输出:
Get-ChildItem folder1 | where { !(($_ -is [System.IO.DirectoryInfo]) -and ($_.Name -eq "connections")) }
这样你可以确切地检查被复制的内容(即"连接"文件夹丢失了吗?)