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' `

复制代码 代码如下:

 #!/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`

打赏

本文固定链接: https://www.cxy163.net/archives/1317 | 绝缘体

该日志由 绝缘体.. 于 2016年09月10日 发表在 首页 分类下,
原创文章转载请注明: bash批量修改文件名称的方法小结(增加,去除,修改后缀) | 绝缘体

报歉!评论已关闭.