标签: linux bash
假设我有一个名称相同但文件扩展名不同的文件列表:
name.a name.b name.c ... name.z
并希望将它们重命名为:
newname.a newname.b newname.c ... newname.z
如何在一个bash命令中执行此重命名操作?
答案 0 :(得分:7)
您可以使用rename实用程序:
rename
rename 's/^name\./newname./' name.*
答案 1 :(得分:1)
您可以使用参数扩展:
for f in name.*; do ext="${f##*.}" mv "$f" "newname.$ext" done
有一篇关于它的优秀文章here