gpt4 book ai didi

powershell - 在PowerShell中一次从CSV运行多个搜索以复制项目

转载 作者:行者123 更新时间:2023-12-02 23:37:53 40 4
gpt4 key购买 nike

我目前正在尝试处理大量文件,并且该过程永远耗时。这些文件都是通过guid命名的,并且有相应的CSV文件,该文件的列包含我要查找的每个guid。因此,我得到了包含CSV文件中的guid的列,然后让PowerShell在files文件夹中搜索匹配的guid。这是到目前为止,我可以以某种方式并行运行此搜索,以便一次搜索多个文件而不是一次搜索一个文件吗?

$CSV = Import-Csv 'D:\CSVs\csv\test.csv'
$files = Get-ChildItem 'X:\'
$destinationPath = "D:\files\"

ForEach ($guid in $CSV) {
$files | Where-Object { $_.Name -match $guid.FileGUID } | Copy-Item -Destination $destinationPath
}

最佳答案

您可以通过索引哈希表中的所有$files来加快搜索速度:

$CSV = Import-Csv 'D:\CSVs\csv\test.csv'
$files = @{}
Get-ChildItem X:\ |ForEach-Object {
$files[$_.Name] = $_
}
$destinationPath = "D:\files\"

ForEach ($guid in $CSV) {
if($files.Contains($guid)){
$files[$guid] |Copy-Item -Destination $destinationPath
}
}

关于powershell - 在PowerShell中一次从CSV运行多个搜索以复制项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50789600/

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