gpt4 book ai didi

powershell - 从Noob到PowerShell,将文件复制到文件夹中

转载 作者:行者123 更新时间:2023-12-03 00:18:37 25 4
gpt4 key购买 nike

抱歉,这是一个非常简单的过程。

我有一个文件夹结构,在根级别(空)有〜4,000个目录,在另一个位置有另一组包含数据的文件夹。

我只想将文件从location2的文件夹内复制到location1的文件夹,即\ FolderABC123 \ Archive,但前提是目录名称匹配。我确定Windows资源管理器副本或xcopy或其他实用程序可以更轻松地完成此操作,但是我想深入了解PowerShell,并认为这将是一个好的开始吗?

谢谢。
克里斯

最佳答案

    # Fist, get a list of all target directories (i.e.: directories under $destination that have a match in $source)

$targetDirs = dir -Path $source -Recurse -Force |
?{ $_.psIsContainer } |
%{ $_.FullName -replace [regex]::Escape($source), $destination } |
%{ if (Test-Path $_) { $_ }}

# Then, enumerate all files from source and copy them only if the corresponding target dir exists

dir -Path $source -Recurse -Force |
?{ -not $_.psIsContainer } |
?{ Test-Path (Split-Path ($_.FullName -replace [regex]::Escape($source), $destination) -Parent) } |
copy -Force -Destination { $_.FullName -replace [regex]::Escape($source), $destination }

关于powershell - 从Noob到PowerShell,将文件复制到文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25542608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com