bash批量修改文件名称的方法总结

发布时间:2020-03-07编辑:脚本学堂
bash批量修改文件名称的方法总结,包括为文件增加后缀、修改文件名后缀、去除文件名后缀、修改文件名前缀,有需要的朋友可以参考下。

bash批量修改文件名称的方法总结,包括为文件增加后缀修改文件名后缀去除文件名后缀修改文件名前缀,有需要的朋友可以参考下。

一、加后缀

1.问题:同以目录下有海量以日期命名的文件,其中有的有后缀,有的以点结尾,如20020101.,20020102.,……,20020101.td,20020102.td……
要求: 把所有以点结尾的加上后缀.ts
我的方法:
 

复制代码 代码如下:

  #!/bin/bash
  for files in `ls *.`
  do
        mv $files `echo "$filests" `
  done

2. 同上
mv  $files ${files}ts

3. 同上
mv  $files  `$files.ts|sed 's/.//' `

4. file =>file.txt
mv  $files  $files.txt

5. *.04  => *04.txt
mv $files $(echo ${files}.txt|sed 's/.//1')

mv $files  `echo ${files}.txt|sed 's/.//1' `

二、改后缀(.old => .new)

 

复制代码 代码如下:

1. rename
rename .old .new  *

2.
mv $files ${file%.old}.new

3.
mv $files `echo $files|tr .old .new`

4.
mv $files `echo $files|sed 's/.old/.new/' `
 

  
三、去后缀 (*.dat => *)
 

复制代码 代码如下:
1.  mv $files `echo $files |sed 's/.dat//' `
2.  mv $files  `echo $files|tr .dat  (4空格)`

四、改前缀 (re* => un*)
 

复制代码 代码如下:
1.  mv $files un${$files#re}
2.  mv $files `echo $files | tr re un`