久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

linux修改文件名命令怎么使用

190次閱讀
沒有評論

共計 1944 個字符,預計需要花費 5 分鐘才能閱讀完成。

今天丸趣 TV 小編給大家分享一下 linux 修改文件名命令怎么使用的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

linux 修改文件名的命令有兩個:1、mv 命令,既可以重命名文件,又可以移動文件或文件夾,修改語法“mv [參數(shù)] 舊文件名 新文件名”;2、rename 命令,可用字符串替換的方式批量改變文件名,語法“rename [參數(shù)] 舊文件名 新文件名”。

1、使用 mv 命令

mv 命令既可以重命名,又可以移動文件或文件夾。

mv [參數(shù)]  舊文件 / 目錄   新文件名 / 目錄

例子:將目錄 A 重命名為 B

mv A B

例子:將 / a 目錄移動到 / b 下,并重命名為 c

mv /a /b/c

其實在文本模式中要重命名文件或目錄,只需要使用 mv 命令就可以了,比如說要將一個名為 abc 的文件重命名為 1234:

mv abc 1234

注意,如果當前目錄下也有個 1234 的文件的話,這個文件是會將它覆蓋的。

如何使用 mv 命令重命名多個文件?

mv 命令一次只能重命名一個文件,但它可以與其他命令一起使用,例如 find 在 bash for 或 while 循環(huán)來重命名多個文件。

示例:如何通過使用 bash for 循環(huán)來重命名當前目錄中的所有.html 文件,將.html 擴展名更改為.php。

for f in *.html; do 
 mv --  $f   ${f%.html}.php 
done

讓我們逐行分析代碼:

● 第一行創(chuàng)建一個 for 循環(huán)并遍歷一個包含所有文件的列表.html。

● 第二行適用于列表中的每個項目和文件移動到一個新的替換.html 用.php。該部分 ${file%.html}使用 shell 參數(shù)擴展.html 從文件名中刪除部分。

● done 表示循環(huán)段的結(jié)束。

我們也可以 mv 結(jié)合使用該命令 find 來實現(xiàn)與上面相同的功能。

find . -depth -name  *.html  -exec sh -c  f= {}  mv --  $f   ${f%.html}.php  \;

find 命令使用該開關(guān)將所有.html 以當前目錄結(jié)尾的文件 mv 一個接一個地傳遞給命令 -exec。該字符串 {} 是當前正在處理的文件的名稱。

上面的示例中可以看出,使用該 mv 命令重命名多個文件并不是一件容易的事,因為它需要很好地了解 Bash 腳本。

2、使用 rename 命令

rename 命令用字符串替換的方式批量改變文件名。

重命名單個文件

#  將 main1.c 重命名為 main.c
rename main1.c main.c main1.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 支持正則表達式

#  把文件名中的 AA 替換成 aa
rename  s/AA/aa/  * 
#  把.html  后綴的改成  .php 后綴
rename  s//.html//.php/  * 
#  把所有的文件名都以 txt 結(jié)尾
rename  s/$//.txt/  *
#  把所有以.txt 結(jié)尾的文件名的.txt 刪掉
rename  s//.txt//  *

默認情況下,重命名命令不會覆蓋現(xiàn)有文件;但傳遞 - f 參數(shù)就可以允許覆蓋現(xiàn)有文件。

rename -f  s/.html/.php/  *.html

常見的使用 rename 命令示例

用下劃線替換文件名中的空格

rename  y/ /_/  *

將文件名轉(zhuǎn)換為小寫

rename  y/A-Z/a-z/  *

將文件名轉(zhuǎn)換為大寫

rename  y/a-z/A-Z/  *

以上就是“l(fā)inux 修改文件名命令怎么使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,丸趣 TV 小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關(guān)注丸趣 TV 行業(yè)資訊頻道。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-12發(fā)表,共計1944字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 宜良县| 故城县| 武山县| 阿勒泰市| 新巴尔虎右旗| 南安市| 岳普湖县| 呼和浩特市| 太仓市| 黔南| 凤翔县| 永清县| 峨山| 厦门市| 北京市| 南宁市| 本溪市| 建水县| 兰西县| 广元市| 抚州市| 喜德县| 东光县| 嘉善县| 洛隆县| 成安县| 卢湾区| 阿尔山市| 邓州市| 洛宁县| 泗水县| 临邑县| 临澧县| 武鸣县| 巨野县| 北安市| 浑源县| 新田县| 鄂尔多斯市| 丹凤县| 平顶山市|