我不确定我在这里做错了什么,但是当我尝试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
}
}