Rename 命令利用 Perl 正则表达式修改文件名。综合运用 find rename mv ,可以完成很多操作。
#!/bin/bash
#rename.sh
#rename .jpb and .png files
;count=1
;for img in *.jpg *.png
;do
;new=p_w_picpath-$count.${img##*.}
;mv "$img" "$new" 2>/dev/null
 
; if [ $? -eq 0 ];
;then
;      echo "Renameing $img to $new"
;      let count++
;fi
;done
工作原理:使用 for 循环对所有扩展名为 .jpg .png 的文件名进行迭代,利用通配符 *.jpg *.png 匹配所有的 JPEG PNG 文件。
注, $(img##*.) 为贪婪操作匹配,对当前循环中的文件名进行解析并获得文件扩展名。具体参照 <<lnux 脚本攻略 >> 2.11.2 章节。