Powershell:替换文件名的特殊字符
Powershell: replace special characters of file names
首先我应该说我仍然是 powershell 脚本的初学者。
我正在尝试通过将文件名中的“+”替换为“”来递归重命名目录中的所有文件。
我使用的命令是:Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "+", " "}
但它不起作用并出现以下错误:
相反,如果我这样做:Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "a", " "}
一切正常。
我认为问题出在“+”字符上,但在网上找不到任何解决此问题的方法。有谁知道如何表示或如何解决这个问题?
您必须转义加号并且命令应该有效:
Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "\+", " "}
首先我应该说我仍然是 powershell 脚本的初学者。
我正在尝试通过将文件名中的“+”替换为“”来递归重命名目录中的所有文件。
我使用的命令是:Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "+", " "}
但它不起作用并出现以下错误:
相反,如果我这样做:Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "a", " "}
一切正常。
我认为问题出在“+”字符上,但在网上找不到任何解决此问题的方法。有谁知道如何表示或如何解决这个问题?
您必须转义加号并且命令应该有效:
Get-ChildItem -File -Recurse | Rename-Item -NewName {$_.name -replace "\+", " "}