File 如果目标目录中不存在文件,则移动Powershell文件结构

File 如果目标目录中不存在文件,则移动Powershell文件结构,file,powershell,File,Powershell,我想将一个由.zip文件解包的文件结构移动到目标目录 解压ZIP有效,移动文件也有效 但在某些情况下,目标目录已经包含与要复制的文件结构同名的文件 也许我想将所有文件从/temp/复制到/target/ 有一个文件/temp/new/2/test.txt,它已经存在于/target/new/2/test.txt中 =>在这种情况下,我不想将任何文件从临时文件夹复制到目标文件夹 我如何通过powershell实现这一点 我现在移动文件的方式是: Get-ChildItem -Path $unzip

我想将一个由.zip文件解包的文件结构移动到目标目录

解压ZIP有效,移动文件也有效

但在某些情况下,目标目录已经包含与要复制的文件结构同名的文件

也许我想将所有文件从/temp/复制到/target/

有一个文件/temp/new/2/test.txt,它已经存在于/target/new/2/test.txt中

=>在这种情况下,我不想将任何文件从临时文件夹复制到目标文件夹

我如何通过powershell实现这一点

我现在移动文件的方式是:

Get-ChildItem -Path $unzipDir -Recurse | Move-Item -Destination $targetDir

谢谢:

筛选出目标路径已经存在的文件

Get-ChildItem -Path $unzipDir -Recurse |
Where { -not Test-Path (Join-Path $targetDir $_) } |
Move-Item -Destination $targetDir
在Where主体中,$\表示当前文件。 连接路径处理从两个部分构建有效路径。
非常感谢:这不是我想要的100%,但我可以过滤,哪些文件存在,如果文件存在,我可以分解文件的移动。非常感谢。啊,那我就误解你了。很好,你无论如何都可以使用它。
if(-not (Test-Path "./target/new/2/test.txt")){
    Get-ChildItem -Path $unzipDir -Recurse | Move-Item -Destination $targetDir
}