通过 Powershell 复制文件列表

通过 Powershell 复制文件列表

因此,我尝试将 44k 文件从一台服务器复制到另一台服务器。

我的 Powershell 脚本是:

Import-CSV f:\script\Listoffiles.csv | foreach $line {Move-item $_.Source $_.Destination}

使用 CSV 格式:

Source, Destination  
E:\folder1\folder2\file with space.txt, \\1.2.3.4\folder1\folder2\file with space.txt

我不断得到:

A positional parameter cannot be found that accepts argument '\\1.2.3.4\folder1\folder2\file'.
At line:1 char:10
+ move-item <<<<  E:\folder1\folder2\file with space.txt \\1.2.3.4\folder1\folder2\file with space.txt
    + CategoryInfo          : InvalidArgument: (:) [Move-Item], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.MoveItemCommand

因此,我尝试在两条路径周围都放置“,还有',但仍然会出现Move-Item: Could not find a part of the path错误。

谁能帮我?

答案1

您是否尝试过在 Move-Item 参数周围放置引号,而不是 csv 项目?另外,删除 $line 变量。

Import-CSV f:\script\Listoffiles.csv | foreach {Move-item "$_.Source" "$_.Destination"}

相关内容