Передача файлов по их именам с помощью Power Shell - PullRequest
0 голосов
/ 28 августа 2018

Наше исходное местоположение, имеющее в своем распоряжении файлы двух типов, с точки зрения их имени. Первый начинается с DM_psedocharge_<curentdate in YYYYMMDD format>.csv, а другой - Monthly_Extract_<curentdate in YYYYMMDD format>.csv.

Теперь в требовании указано, что первый файл должен быть перенесен в целевую папку C:\DMRelated, а второй - в папку C:\MonthlyExtract. В обоих случаях исходная папка является общей.

Я попытался перехватить нужный файл на основе выражения reg в условии if. Если условие соответствует "^DM_", тогда ПЕРЕМЕСТИТЕ на C:\DMRelated, иначе ПЕРЕМЕСТИТЕ на C:\MonthlyExtract. Но выбранное мной выражение кажется неправильным. Может ли кто-нибудь помочь мне в этом? Я новичок в написании скриптов Power Shell.

1 Ответ

0 голосов
/ 28 августа 2018

Поскольку вы всегда ищете текущую дату, вам не нужно сопоставлять шаблон - вы уже знаете точное имя файла!

Set-Location "C:\source\location"
Move-Item "DM_psedocharge_$(Get-Date -Format yyyyMMdd).csv" -Destination C:\DMRelated
Move-Item "Monthly_extract_$(Get-Date -Format yyyyMMdd).csv" -Destination C:\MonthlyExtract

В приведенном выше примере мы используем командлет Get-Date (по умолчанию используется текущая дата и время) с параметром -Format, чтобы получить отформатированную строку даты в виде yyyyMMdd

...