请原谅一个菜鸟问题,但我完全被这个问题搞糊涂了。
我有一个用户提交的文件到达的“存款人”目录,并且无法控制传入的文件名。
我在 PS 中创建了一个解析器,它非常成功地将文件(基于文件名内容)移动到适当的目的地。
这工作正常,除非文件名包含“[”或“]”。
这是“重命名”预处理器,它实际上无法重命名包含任何一个讨厌的括号字符的文件:
cd $folderpath
foreach ($i in get-childitem $folderpath) {
if ($i.mode.substring(0,1) -ne “d”) {
$name = $i.name.replace("[","_")
$name = $name.replace("]","_")
Write-Host $i -foregroundcolor “blue”
Write-Host $name -foregroundcolor “green”
Rename-Item $i $name
}
}
Run Code Online (Sandbox Code Playgroud)
这对于 ren、copy、move 及其 cmdlet 等效项也失败
您可以提供任何见解将是最受欢迎的。
提前致谢 。. .