小编tia*_*gob的帖子

使用sed和mv重命名文件

我想以以下格式重命名文件:

img_MM-DD-YY_XX.jpg

img_MM-DD-YY_XXX.jpg

至:

newyears_YYYY-MM-DD_XXX.jpg

哪里:

  • YYYY =年份
  • MM =月
  • DD =天
  • XXX或XX =照片编号

我想出了这个脚本,但它不起作用:

for filename in ?*.jpg; do
        newFilename=$(echo $filename | \
        sed 's/img_\(.*\)-\(.*\)-\(.*\)_\([0-9][0-9]\)\./newyears_20\3-\1-\2_0\4./;
                s/img_\(.*\)-\(.*\)-\(.*\)_\([0-9][0-9][0-9]\)/newyears_20\3-\1-\2_\4/' -)
        mv $filename $newFilename
done
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

bash sed mv

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×1

mv ×1

sed ×1