|

楼主 |
发表于 2005-5-24 15:36:14
|
显示全部楼层
终于搞定,好歹能用了。下面是脚本,最麻烦的地方就是对文件名中的特殊字符的转义和正则匹配了。而且中文文件名和中文目录也没有测试(我的都是英文歌曲)。
- #! /bin/bash
- OLD_IFS=$IFS
- IFS=$'\n'
- for i in `find . -type f -name "*.jpg"`
- do
- echo Finding $i now....
- before=`echo $i | sed -r 's/\ /\\ /g; s/\(/\\(/g; s/\)/\\)/g'`
- after=`echo $before | sed -r 's/\/{1}[^\/]*.jpg$/\/cover.jpg/g'`
- echo Before:
- echo $before
- echo After:
- echo $after
- if test -f $after
- then
- echo We already have one here, give up.....
- else
- echo Renaming.....
- cp -f $before $after
- fi
- done
- IFS=$OLD_IFS
复制代码 |
|