2

Я пытаюсь написать сценарий PowerShell, чтобы сделать следующее.

шаг 1

Переименуйте файлы в исходных (FTP-папках) каталогах, указав их «current_name_datetime.csv» в соответствии с исходным файлом «Source_list.csv». В этом файле есть каталоги «source, destination».

шаг 2

Скопируйте недавно переименованные файлы в каталоги резервных копий в соответствии с пунктом назначения в Source_list.csv. В этом файле есть каталоги «источник, место назначения», в который я хочу посмотреть этот сценарий.

шаг 3

Переместить недавно переименованные файлы в конечный каталог назначения, которого нет в моем текущем скрипте.

--------------------- Мой сценарий ----------------------

$sdfiles = Get-Content c:\!tony\Source_list.csv
$sourceDir = "c:\test\"
$destinationDir = "c:\testing\"

Get-ChildItem $sourceDir -Recurse -Include $sdfiles "*.csv"|
    ForEach-Object{
           $newname= "{0}{1}_{2}.csv" -f $destinationDir, $_.BaseName,[datetime]::Now.ToString('MM-dd-yyyy-hh-mm-ss')
        $_|Copy-Item -Include ,$sfiles -Destination $newname -whatif }

-----------------------Ошибка--------------------------

What if: Performing operation "Copy Directory" on Target "Item: C:\test\cscenter Destination: C:\testing\cscenter_10-01-2015-12-22-24.csv".

Я вижу в ошибке, что она пытается скопировать каталог, а не отдельный файл в каждом каталоге, и создает новую папку, используя исходное имя папки, переименовывает папку и добавляет метку даты / времени.

Любая помощь будет высоко ценится.

0