重命名文件名中的命令特殊字符

重命名文件名中的命令特殊字符

我想删除多个文件名中的 []。使用重命名命令执行此操作时出现错误。

还有其他方法可以做到这一点吗?

答案1

[]是 Perl Regex 语法中命令使用的特殊字符。在它们前面rename使用。例如:\

rename "s/\[|\]/_/g" *

IE:

s replace
[
| or
]
  with
_
* for all files here

答案2

我更喜欢使用这个命令:

for file in $(echo *|grep -E '(\[|\])'); do mv $file $(echo $file|sed -r 's/(\[|\])/_/g'); done

这会将当前目录中的所有方括号替换为下划线。

相关内容