Linux批量重命名文件

1
2
3
4
5
6
7
8
9
  
#在前面添加 _hoho_
  
for i in \`ls\`; do mv -f $i \`echo "_hoho_"$i\`; done

#修改前面5个字母为zhaozh
  
for i in \`ls\`; do mv -f $i \`echo $i | sed 's/^...../zhaozh/'\`; done

Linux批量重命名文件会涉及到改变一个字母、改变一些相连字母、改变某些位置的字母、在最前面加上某些字母、或者改变字母的大小写。完成这里五个方法基本上就会解决了Linux批量重命名的工作。

  1. 我想把它们的名字的第一个1个字母变为"q”,其它的不变

[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed ‘s/^./q/'`; done

或者写个脚本,显得更加清晰:

for file in `ls`

do

newfile =`echo $i | sed ‘s/^./q/'`

mv $file $newfile

done

  1. 修改前面5个字母为zhaozh

[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed ‘s/^…../zhaozh/'`; done

  1. 修改后面5个字母为snail

[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed ‘s/…..$/snail/'`; done

  1. 在前面添加 hoho

[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo “hoho“$i`; done

  1. 所有的小写字母变大写字母

[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | tr a-z A-Z`; done

上面是五中完成有关Linux批量重命名方法。