我有一个 Tapestry 项目,其中有语言相关的属性和其他文件
ls -alR | grep '_en\..*'
因此,上面给出了结果列表,例如
Chat_en.properties
User_en.vm
Home_en.tml
现在我需要将所有这些重命名为_Z Z代替_en。是否有任何单个命令可以重命名它们?
答案1
一个简单的 Bash 单行命令:
for f in *; do echo mv -- "$f" "${f//_en/_zz}"; done
删除echo
当打印您需要的内容时。它使用子串替换在文件名上。
使用rename
接受 Perl 正则表达式的命令您还可以执行以下操作:
rename -n 's/_en/_zz/' *
-n
当您确定能够正确重命名所有内容时,请删除。