linux shell 脚本编程实现 将指定的目录的所有*.gif文件都重命名为*.jpg 利用字符串提取和修改来实现

这是我找的程序:怎么运行 请高手指教
1 #!/bin/bash
2 # rfe.sh: 重命名文件扩展名.
3 #
4 # 用法: rfe old_extension new_extension
5 #
6 # 例子:
7 # 将指定目录的所有 *.gif 文件都重命名为 *.jpg,
8 # 用法: rfe gif jpg
9
10
11 E_BADARGS=65
12
13 case $# in
14 0|1) # "|" 在这里的意思是或操作.
15 echo "Usage: `basename $0` old_file_suffix new_file_suffix"
16 exit $E_BADARGS # 如果只有0个或1个参数,那么就退出.
17 ;;
18 esac
19
20
21 for filename in *.$1
22 # 以第一个参数为扩展名的全部文件的列表
23 do
24 mv $filename ${filename%$1}$2
25 # 从筛选出的文件中先去掉以第一参数结尾的扩展名部门,
26 #+ 然后作为扩展名把第2个参数添加上.
27 done
28
29 exit 0
################################End

1.touch一个脚本文件rfe.sh: touch rfe.sh
2.编辑mv.sh,把你找到的内容添加到脚本中:vi rfe.sh
3.给脚本执行的权限:chmod +x rfe.sh
4.执行:./rfe.sh
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-20
不知为何lz会选择这种方法,其实简单的rename命令就可以满足,这个你参考下http://hi.baidu.com/92wiki/item/590f3db62207ebf162388e04
第2个回答  2012-12-07
./rfe.sh #输入这个命令运行即可
第3个回答  2012-12-07
sh rfe.sh file1.gif file2.ipg
或者先添加可执行权限:chmod +x rfe.sh
再 ./rfe.sh file1.gif file2.ipg
第4个回答  2013-01-20
rename ‘s/.if/.jpg/' *
第5个回答  2012-12-07
楼下的不对 首先需要ls出所有文件吧 filename是啥
相似回答