我很难使用Copy-item在没有目录结构的情况下使用特定扩展名(* .txt)递归复制文件(仅)。有人可以帮我一把吗?我已经将gci与-recurse一起使用并将输出传送到copy-item,它给出了一个错误,指出输入不正确。 Get-ChildItem -Path $source -include "*name*.txt" -recurse | Copy-Item $source $dest
答案 0 :(得分:0)
使用-file仅接受文件而不是目录。复制项目必须只有目标路径... -force if doublon file
试试这个:
gci $source -file -include "*name*.txt" -recurse | copy-item -Destination $dest -Force
如果你有双重性,你可以试试这个:
$source="C:\temp\Release"
$dest="c:\temp\x"
gci $source -file -include "*name*.txt" -recurse | group Name | %{
for ($i = 0; $i -lt $_.Count; $i++)
{
if ($_.Count -gt 1)
{
$destination="{0}\{1}_{2}" -f $dest, $i, $_.Group[$i].Name
}
else
{
$destination="{0}\{1}" -f $dest, $_.Group[$i].Name
}
copy-item $_.Group[$i].FullName $destination -WhatIf -Force
}
}