在 powershell 中使用 csv 复制文件夹

在 powershell 中使用 csv 复制文件夹

我对 powershell 还很陌生,几乎没有编写脚本的经验。我有一个任务是将文件夹从源复制到目标,但其中有一些棘手的部分。我有一个源文件夹 C:\source\,其中存放了所有文件夹和子文件夹。

在此处输入图片描述

我有一个 csv 文件,其中有两个单独的列需要从源复制到目标。

C:\目标\公司1\

C:\目标\公司2\

即两个不同的公司在同一个源文件夹中有文件夹,因此需要将它们复制并粘贴到不同的目标文件夹中。

在此处输入图片描述

这是我根据互联网上的一些理解尝试的代码。

$source       = Get-Childitem "C:\source"
$destination1 = "C:\dest\company1\"
$destination2 = "C:\dest\company2\"
$csv          = import-csv "C:\Scripts\copytask.csv"

foreach ($row in $csv) {
    if($source -contains $row.company1){
        robocopy "C:\source\$($row.company1)*" $destination1 /E 
    }
    elseif($source -contains $row.company2){
        robocopy "C:\source\$($row.company2)*" $destination2 /E 
    }
}

当我运行脚本时,我没有得到任何输出或复制。

相关内容