作業系統:centos linux release 7.4.1708 (core)
需求:需要將.txt檔案的字尾改為.log
需要命令:rename
[root@test test]# rename -h
usage:
rename [options] expression replacement file...
options:
-v, --verbose explain what is being done
-s, --symlink act on symlink target
-h, --help display this help and exit
-v, --version output version information and exit
for more details see rename(1).
可以看到rename的使用方法是rename [選項] 替換前的內容 替換後的內容 替換檔案
試驗樣例:
[root@test test]# touch .txt
[root@test test]# ll
total 0
-rw-r--r--. 1 root root 0 feb 26 10:59 10.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 1.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 2.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 3.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 4.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 5.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 6.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 7.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 8.txt
-rw-r--r--. 1 root root 0 feb 26 10:59 9.txt
[root@test test]# rename -v .txt .log *.txt
`10.txt' -> `10.log'
`1.txt' -> `1.log'
`2.txt' -> `2.log'
`3.txt' -> `3.log'
`4.txt' -> `4.log'
`5.txt' -> `5.log'
`6.txt' -> `6.log'
`7.txt' -> `7.log'
`8.txt' -> `8.log'
`9.txt' -> `9.log'
[root@test test]# ll
total 0
-rw-r--r--. 1 root root 0 feb 26 10:59 10.log
-rw-r--r--. 1 root root 0 feb 26 10:59 1.log
-rw-r--r--. 1 root root 0 feb 26 10:59 2.log
-rw-r--r--. 1 root root 0 feb 26 10:59 3.log
-rw-r--r--. 1 root root 0 feb 26 10:59 4.log
-rw-r--r--. 1 root root 0 feb 26 10:59 5.log
-rw-r--r--. 1 root root 0 feb 26 10:59 6.log
-rw-r--r--. 1 root root 0 feb 26 10:59 7.log
-rw-r--r--. 1 root root 0 feb 26 10:59 8.log
-rw-r--r--. 1 root root 0 feb 26 10:59 9.log
ps:網上有很多類似這種rename 's/替換前內容/替換後內容/' 需要替換檔案,rename並不能真正重新命名。具體情況使用rename -h 檢視幫助文件進行操作 Linux批量重新命名檔案
目的 批量重新命名一些檔案,這些檔案有共同特徵,比如具有相同的字母,或者沒有共同特徵,想統一重新命名,修改它們相同位置上的字元等等。1 我想把它們的名字的第乙個1個字母變為 q 其它的不變 root pps mailqueue for i in ls do mv f i echo i sed s q...
批量重新命名Linux檔案
把當前目錄下的所有檔案重新命名為a 例如 a.jpg 則執行後變成a a.jpg for var in do mv var a var done 1 刪除所有的 bak 字尾 rename s bak bak 2.加.zip字尾 rename s zip 3 把 jpe 檔案字尾修改為 jpg 4 ...
Linux批量重新命名檔案
1 bin bash 為檔名新增前導0,以保證檔名前的數字位數相同 3個 for file in ls doif echo file grep 1 9 0 9 dev null then newfile echo file sed s 1 9 0 9 00 elif echo file grep s...