我不确定我在这里做错了什么,但当我尝试使用新文件名Rename-Item
时,我一直遇到错误,说我要重命名的原始文件不存在。我的目标是删除多个&#34;坏&#34;给定文件名中的字符。错误字符为[]<>:*
,我目前仅查看[]
以确保其在添加其余内容之前有效。
代码示例:
$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
}
}