0

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

0 回答 0