Переименование файлов с плохими символами
Я не уверен, что я делаю здесь неправильно, но когда я пытаюсь Rename-Item
с новым именем файла я продолжаю сталкиваться с ошибкой, говоря, что оригинальный файл, который я хочу переименовать, не существует. Моя цель - удалить несколько "плохих" символов из заданного имени файла. Плохие персонажи []<>:*
и я только сейчас смотрю на []
чтобы убедиться, что это работает, прежде чем добавлять остальные.
Пример кода:
$Directory = "G:\TEMP\2016\"
$ExcelFiles = Get-ChildItem $Directory -Recurse -Include *.xls,*.xlsx |
% {$_.FullName}
foreach ($excelfile in $excelfiles) {
#Write-Host "Checking $excelfile"
if ($excelfile -match "\[|\]") {
$newfilename = $excelfile -replace "[\[\]]", ""
Rename-Item $excelfile -NewName $newfilename
}
}