重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
Linux不像Windows一樣區分文件后綴的,所以是可以改的,而且不影響使用的。
創新互聯響應式網站特點就是不管在電腦、平板還是手機上,成都h5網站建設都會根據屏幕尺寸自動調節大小、圖片分辨率,并且融入一定的動畫特效,讓網站看起來非常的美觀大方。從網站需求對接到網站制作設計、從代碼編寫到項目上線運維,技術人員全程跟蹤,快速響應
1,mv可以移動文件,也可以用作更改文件名。
2,修改命名:mv fileName.type fileName.newType就可以更改文件后綴了。
3,但是一些特定的文件不要隨意更改,例如配置文件。
rename的參數
rename命令的格式:
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
第一個參數:被替換掉的字符串
第二個參數:替換成的字符串
第三個參數:匹配要替換的文件模式
例子:rename main1.c main.c main1.c 將main1.c重命名為main.c
rename支持通配符
? 可替代單個字符
* 可替代多個字符
[charset] 可替代charset集中的任意單個字符
例子:文件夾中有這些文件foo1, ..., foo9, foo10, ..., foo278,
如果使用 rename foo foo0 foo?
會把foo1到foo9的文件重命名為foo01到foo09,重命名的文件只是有4個字符長度名稱的文件,文件名中的foo被替換為foo0。
如果使用 rename foo foo0 foo??
foo01到foo99的所有文件都被重命名為foo001到foo099,只重命名5個字符長度名稱的文件,文件名中的foo被替換為foo0。
如果使用 rename foo foo0 foo*
foo001到foo278的所有文件都被重命名為foo0001到foo0278,所有以foo開頭的文件都被重命名。
如果使用 rename foo0 foo foo0[2]*
從foo0200到foo0278的所有文件都被重命名為foo200到foo278,文件名中的foo0被替換為foo。
rename支持正則表達式
例子:
字母的替換rename "s/AA/aa/" * //把文件名中的AA替換成aa
修改文件的后綴rename "s//.html//.php/" * //把.html 后綴的改成 .php后綴
批量添加文件后綴rename "s/$//.txt/" * //把所有的文件名都以txt結尾
批量刪除文件名rename "s//.txt//" * //把所有以.txt結尾的文件名的.txt刪掉
也可以參考《Linux就該這么學》中的章節內容嘗試解決。
比如修改一下目錄下的所有文件的后綴
ls -l|awk '{print $9}'|xargs -I{} mv {} {}.bak
[root@ test]# touch a b c
[root@ test]# ls -l
total 0
-rw-r--r-- 1 root root 0 Apr 27 21:50 a
-rw-r--r-- 1 root root 0 Apr 27 21:50 b
-rw-r--r-- 1 root root 0 Apr 27 21:50 c
[root@ test]# ls -l|awk '{print $9}'|xargs -I{} mv {} {}.bak
[root@ test]# ls -l
total 0
-rw-r--r-- 1 root root 0 Apr 27 21:50 a.bak
-rw-r--r-- 1 root root 0 Apr 27 21:50 b.bak
-rw-r--r-- 1 root root 0 Apr 27 21:50 c.bak
格式固定的話 去掉后面6個嘛~~~在加‘.txt’~~~~ 用os.poen(‘ls’)獲取各個目錄下的文件名,用a表示文件名,a[0:12]獲取到你要的字符串,在加'.txt',用b表示你要該的文件名,每讀取一個重命名一個嘛~~~