我有一个需要重命名的图像序列列表,它基本上是在序列的最后一个下加一个下划线。
实施例。 sun_seq_img_001.jpg>>> sun_seq_img__001.jpg
然而,当我尝试以下命令rename "_" "__"" *
时,它正在替换第一个下划线sun__img_...
,这不是我想要的
我可以尝试使用mv sun_seq_img_001.jpg sun_seq_img__001.jpg
,但这很麻烦,特别是我正在处理大型序列
有什么想法吗?
答案 0 :(得分:2)
如果您的文件名与您描述的一样,那么您应该可以这样做:
rename img_ img__ *
否则,您可以使用bash
这样的脚本:
for i in *.jpg ; do mv "$i" "${i%_*}__${i##*_}" ; done
${i%_*}
剥去最后_
及之后的内容
${i##*_}
删除了最后_
及其前面的内容。