批量改名字
[root@usr001 test]# vi a.log
[root@usr001 test]# for f in cat a.log
;do touch $f;done
[root@usr001 test]# ls
a.log stu_10299_2_finished.jpg stu_10299_4_finished.jpg
stu_10299_1_finished.jpg stu_10299_3_finished.jpg
[root@usr001 test]# ll
total 4
-rw-r--r--. 1 root root 100 Jul 20 00:52 a.log
-rw-r--r--. 1 root root 0 Jul 20 00:53 stu_10299_1_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 00:53 stu_10299_2_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 00:53 stu_10299_3_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 00:53 stu_10299_4_finished.jpg
[root@usr001 test]#
[root@usr001 test]# ls .jpg|sed -r '1,5s#(.[1-5])(.*ed)(.jpg)#mv \1\2\3 \1\3#gp' -n>s.sh
[root@usr001 test]# cat s.sh
mv stu_10299_1_finished.jpg stu_10299_1.jpg
mv stu_10299_2_finished.jpg stu_10299_2.jpg
mv stu_10299_3_finished.jpg stu_10299_3.jpg
mv stu_10299_4_finished.jpg stu_10299_4.jpg
[root@usr001 test]# sh s.sh
[root@usr001 test]# ls
a.log s.sh stu_10299_1.jpg stu_10299_2.jpg stu_10299_3.jpg stu_10299_4.jpg
[root@usr001 test]#
利用shell批量更改名字
[root@usr001 test]# touch stu_10299{1..5}finished.jpg
[root@usr001 test]# ll
total 0
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_1_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_2_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_3_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_4_finished.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_5_finished.jpg
[root@usr001 test]# vi plsc.sh
[root@usr001 test]# cat plsc.sh
for f in ls *jpg
do
mv $f echo ${f%finished*}.jpg
done
[root@usr001 test]# sh plsc.sh
[root@usr001 test]# ll
total 4
-rw-r--r--. 1 root root 59 Jul 20 01:51 plsc.sh
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_1.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_2_.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_3_.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_4_.jpg
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_5_.jpg
[root@usr001 test]#
例子:[root@usr001 ~]# echo ${OLDBOY/I am/You are}
You are oldboy
[root@usr001 ~]# echo ${OLDBOY/#oldboy/girl}
girl,and I am handsome oldboy
[root@usr001 test]# vi rple.sh
[root@usr001 test]# cat rple.sh
for f in ls *jpg
do
mv $f echo ${f/%jpg/pdf}
done
[root@usr001 test]# sh rple.sh
[root@usr001 test]# ll
total 8
-rw-r--r--. 1 root root 59 Jul 20 01:51 plsc.sh
-rw-r--r--. 1 root root 56 Jul 20 01:58 rple.sh
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_1_.pdf
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_2_.pdf
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_3_.pdf
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_4_.pdf
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_5_.pdf
[root@usr001 test]#
使用sed ‘s###g’替换
[root@usr001 test]# vi sed_use.sh
[root@usr001 test]# cat sed_use.sh
for f in ls *pdf
do
mv $f echo $f|sed 's#pdf#xls#g'
done
[root@usr001 test]# sh sed_use.sh
[root@usr001 test]# ll
total 12
-rw-r--r--. 1 root root 59 Jul 20 01:51 plsc.sh
-rw-r--r--. 1 root root 56 Jul 20 01:58 rple.sh
-rw-r--r--. 1 root root 62 Jul 20 02:06 sed_use.sh
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_1_.xls
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_2_.xls
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_3_.xls
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_4_.xls
-rw-r--r--. 1 root root 0 Jul 20 01:44 stu_10299_5_.xls
[root@usr001 test]#