Назад | Перейти на главную страницу

Копирование списка файлов через 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 ошибки.

Может кто-нибудь помочь мне?

Вы пробовали помещать кавычки вокруг параметров Move-Item вместо элементов csv? Кроме того, отбросьте переменную $ line.

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