В конечном итоге мне нужен solid сценарий PowerShell, который будет принимать папку с несколькими сотнями видеофайлов, импортировать существующие имена файлов в программу, искать новое имя файла в CSV и переименовывать его. Старое имя файла просто (ie. File1.mp4, File2.mp4, et c.). Я хотел бы добавить дату в начало файла в формате (ГГГГ-ММ-ДД).
Для тестирования я создал на своем рабочем столе папку с (10) текстовыми файлами, каждый из которых имеет уникальное имя.
Мой CSV-файл выглядит следующим образом:
Изображение CSV
Столбец «newfilename» был создан с помощью команды Concatenate в Excel.
`(=CONCATENATE(TEXT(A2, "yyyy-mm-dd")," ", B2)`
Как бы мне ни хотелось, чтобы PowerShell справлялся со всем, я чувствую, что использование Excel для большинства из них может быть лучшим способом.
В моем тестировании все было в одной папке , Однако на работе у меня будут видеофайлы на одном диске, а сценарий должен находиться в папке на рабочем столе. Поскольку я нахожусь в корпоративной сети, мне нужен специальный командный файл для запуска моих скриптов, который не является чем-то новым. Я просто изменяю имя скрипта, и он уходит!
Итак, какие команды мне нужно сделать, чтобы скрипт был отделен от видеофайлов И файла CSV?
Вот код, который у меня есть до сих пор. Все работает, когда он в одной папке.
PS C:\Users\ceran\Desktop\Rename Project> Import-Csv -Path .\MyFileList.csv | ForEach-Object {
>> $Src = Join-Path -Path $TargetDir -ChildPath $_.filename
>> $Dst = Join-Path -Path $TargetDir -ChildPath $_.newfilename
>> Rename-Item -Path $Src -NewName $Dst
>> }
Заранее спасибо за помощь!
Крис