1

У меня есть жесткий диск, содержащий файлы с именами, которые были отформатированы с помощью функции "История файлов" Windows. Типичное имя файла выглядит так:

Randomfile - blah (2015_05_29 14_56_40 UTC).docx

или же

1415374402647_res_original (2015_05_31 15_33_12 UTC).jpg

Что мне нужно сделать, это удалить отметку даты / времени, которая присутствует в конце каждого файла. Слишком много файлов, чтобы сделать это вручную, и поэтому я хочу использовать powershell и regex, чтобы сделать это для меня. Он также должен быть рекурсивным, поэтому он также будет искать подпапки.

Моя ОС Win7 Ultimate.

1 ответ1

0

Хорошо, если все, что вы хотите сделать, это удалить все в последнем наборе скобок (я предполагаю, что все даты в скобках):

Get-ChildItem -Recurse | Rename-Item -NewName {
    $file = $_.FullName.Substring(0, $_.FullName.LastIndexOf("(")).Trim()
    $file + $_.FullName.Substring($_.FullName.IndexOf(")") + 1)
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .