我在批处理文件中运行 powershell 命令以从文件夹名称中删除括号,但它会重命名路径中的所有文件夹,如果文件夹名称不包含括号,它会给我一个错误。
我希望它在特定文件夹上运行,并且我希望它在运行之前检查名称是否包含括号。如果名称中没有括号,它应该什么都不做。
希望保持它是一个单行命令
我已经搜索了互联网,但我找不到解决方案。
命令:
powershell -command "Dir -Path e:\test | rename-item -NewName { $_ -replace '\[','_' -replace '\]','_'}"
批处理文件使用一些参数自动运行,并且我从参数中获取要重命名的目录的确切名称。(即start.bat param1 param2)
我试图实现 IF 语句,但我就是想不通。
删除括号的原因是,模块“remove-itemsafely”不能处理带括号的名称。此模块将文件放入回收站,而不是永久删除它们。
希望有人可以帮助我,谢谢。