0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux rename命令重命名多個(gè)文件與目錄

CHANBAEK ? 來(lái)源:myfreax ? 作者:myfreax ? 2022-12-09 17:41 ? 次閱讀

使用mv命令重命名多個(gè)文件和目錄可能是一個(gè)乏味的過(guò)程,因?yàn)樗婕笆褂霉艿?,循環(huán)等編寫(xiě)復(fù)雜的命令。

這就是rename命令派上用場(chǎng)的地方。它通過(guò)指定名稱(chēng)與搜索表達(dá)式來(lái)批量重命名指定的文件。

rename命令的兩個(gè)版本,具有不同的語(yǔ)法和功能。我們將使用rename命令的Perl版本。

如果你的系統(tǒng)未安裝rename,命令將顯示rename: command not found,rename命令未找到。您可以使用發(fā)行版的軟件包管理器輕松安裝rename。

如果你的計(jì)算機(jī)運(yùn)行的是基于Debian的Linux發(fā)行版,例如Ubuntu,Linux mint。請(qǐng)運(yùn)行命令sudo apt update && sudo apt install rename安裝rename。

如果你的計(jì)算機(jī)運(yùn)行的是基于RedHat的Linux發(fā)行版,例如CentOS,F(xiàn)edora。請(qǐng)運(yùn)行命令sudo dnf install prename安裝prename。

sudo apt update
sudo apt install rename
sudo yum install prename

rename命令選項(xiàng)

rename命令的語(yǔ)法形式是rename [OPTIONS] perlexpr filesperlexpr是perl正則表達(dá)式。files是文件。

rename命令其實(shí)是Perl腳本。它將根據(jù)指定的正則表達(dá)式重命名指定的。您可以在此處閱讀Perl正則表達(dá)式的更多信息。

例如命令rename 's/.css/.scss/' *.css會(huì)將所有.css文件的擴(kuò)展名更改為.scss。

rename 's/.css/.scss/' *.css

讓我們更詳細(xì)地說(shuō)明命令,rename命令可以映射成,s/你的搜索模式/指定你的替換值/要替換的模式。

.css是perl的正則表達(dá)式。它是替換運(yùn)算符s/中的第一個(gè)參數(shù)。rename命令將在指定的文件名中搜索此模式,如果找到,它將用第二個(gè)參數(shù)替換。

.scss表示替換參數(shù)。替換運(yùn)算符s/中的第二個(gè)參數(shù)。

*.css表示所有擴(kuò)展名為.css的文件。通配符*是用于表示零個(gè),一個(gè)或多個(gè)字符的符號(hào)。

在運(yùn)行rename命令并重命名文件或者目錄之前,最好使用-n選項(xiàng)執(zhí)行空運(yùn)行,reanme將會(huì)向您打印將重命名的文件。

rename -n 's/.css/.scss/' *.css
rename(file-0.css, file-0.scss)
rename(file-1.css, file-1.scss)
rename(file-2.css, file-2.scss)
rename(file-3.css, file-3.scss)
rename(file-4.css, file-4.scss)

默認(rèn)情況下,rename命令不會(huì)覆蓋現(xiàn)有文件。使用-f選項(xiàng)指示rename覆蓋已存在的文件。

如果需要rename打印已成功重命名的文件名稱(chēng),請(qǐng)使用-v選項(xiàng)。

rename -f 's/.css/.scss/' *.css
rename -v 's/.css/.scss/' *.css
file-0.css renamed as file-0.scss
file-1.css renamed as file-1.scss
file-2.css renamed as file-2.scss
file-3.css renamed as file-3.scss
file-4.css renamed as file-4.scss

rename示例

以下是一些如何使用重命名命令的常見(jiàn)示例。

用下劃線(xiàn)替換文件名中的空格

rename 'y/ /_/' *

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

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

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

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

從文件名中刪除.bak

rename 's/\\.bak$//' *.bak

將.jpeg和.JPG文件名重命名為.jpg

rename 's/\\.jpe?g$/.jpg/i' *

結(jié)論

rename命令允許您使用Perl正則表達(dá)式一次重命名多個(gè)文件和目錄。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11178

    瀏覽量

    208500
  • 文件
    +關(guān)注

    關(guān)注

    1

    文章

    557

    瀏覽量

    24642
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    669

    瀏覽量

    21957
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux中CMake的使用3-不同目錄多個(gè)文件

    上篇(Linux中CMake的使用2-同目錄多個(gè)文件)介紹了在同一目錄下有多個(gè)
    的頭像 發(fā)表于 09-21 08:49 ?3926次閱讀
    <b class='flag-5'>Linux</b>中CMake的使用3-不同<b class='flag-5'>目錄</b><b class='flag-5'>多個(gè)</b>源<b class='flag-5'>文件</b>

    php中rename()函數(shù)的妙用

    php中rename()函數(shù)的妙用 大家都知道,rename()函數(shù)可以對(duì)文件目錄進(jìn)行重命名的操作。其實(shí)它還可以做很多事情。 熟
    發(fā)表于 01-11 09:33

    Linux文件的復(fù)制、刪除和移動(dòng)命令

    Linux文件的復(fù)制、刪除和移動(dòng)命令 Linux文件的復(fù)制、刪除和移動(dòng)命令  cp
    發(fā)表于 01-18 12:45 ?1237次閱讀

    Linux目錄的創(chuàng)建與刪除命令

    Linux目錄的創(chuàng)建與刪除命令 Linux目錄的創(chuàng)建與刪除命令  mkdir
    發(fā)表于 01-18 12:46 ?1301次閱讀

    Linux改變文件目錄的訪問(wèn)權(quán)限命令

    Linux改變文件目錄的訪問(wèn)權(quán)限命令 Linux改變文件
    發(fā)表于 01-18 12:46 ?1185次閱讀

    LABVIEW中文件重命名的幾種方法——陳樹(shù)學(xué)《labview寶典》

    和REN是等同的,屬于內(nèi)部DOS命令。需要注意的是重命名后的文件名不能指定驅(qū)動(dòng)器和路徑,因?yàn)橹荒茉谠?b class='flag-5'>文件夾中重命名。四、利用API函數(shù)當(dāng)遇到
    發(fā)表于 01-03 16:35 ?4808次閱讀
    LABVIEW中<b class='flag-5'>文件</b><b class='flag-5'>重命名</b>的幾種方法——陳樹(shù)學(xué)《labview寶典》

    Linux上使用簡(jiǎn)單的cp和mv命令來(lái)復(fù)制和重命名文件

    有個(gè)非常有用的例子。假設(shè)你想重新命名一個(gè)目錄中的文件,將所有的大寫(xiě)字母替換為小寫(xiě)字母。一般來(lái)說(shuō),你在 Unix 或 Linux 系統(tǒng)上找不到大量大寫(xiě)字母的
    的頭像 發(fā)表于 06-25 14:02 ?8357次閱讀

    如何使用python給所有文件重命名

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用python給所有文件重命名資料免費(fèi)下載。
    發(fā)表于 09-22 17:09 ?2次下載
    如何使用python給所有<b class='flag-5'>文件</b>夾<b class='flag-5'>重命名</b>

    如何使用mv和rename命令重命名文件

    重命名文件目錄是您經(jīng)常需要在Linux系統(tǒng)上執(zhí)行的最基本任務(wù)之一。重命名單個(gè)文件很簡(jiǎn)單,但一次
    的頭像 發(fā)表于 01-17 17:43 ?7552次閱讀

    討論Linux mv命令的一些實(shí)際示例

    mv 命令的最基本用途是重命名文件。那么讓我們看看如何重命名當(dāng)前目錄中的文件。
    的頭像 發(fā)表于 02-14 16:28 ?615次閱讀

    恒訊科技分析:如何使用cp命令Linux中復(fù)制目錄?

    復(fù)制目錄Linux中的一項(xiàng)基本任務(wù),它允許我們復(fù)制目錄、創(chuàng)建備份或在不同位置之間傳輸數(shù)據(jù)。在Linux中復(fù)制文件
    的頭像 發(fā)表于 06-26 17:14 ?645次閱讀

    linux系統(tǒng)基本操作命令

    Linux系統(tǒng)基本操作命令有很多,以下是一些常用的命令: ls :列出目錄內(nèi)容。 cd :改變當(dāng)前目錄。 mkdir :創(chuàng)建
    的頭像 發(fā)表于 11-08 11:17 ?1607次閱讀

    linux中刪除文件命令

    Linux中,可以使用 rm 命令來(lái)刪除文件。該命令多個(gè)參數(shù)和選項(xiàng)可供使用,以根據(jù)不同的情況進(jìn)行文件
    的頭像 發(fā)表于 11-08 14:11 ?719次閱讀

    linux刪除文件命令rm

    Linux系統(tǒng)中,可以使用rm命令來(lái)刪除文件目錄。該命令的功能是刪除一個(gè)目錄中的一個(gè)或
    的頭像 發(fā)表于 11-13 16:42 ?781次閱讀

    總結(jié)linux命令行的主要用法

    目錄操作、權(quán)限管理、進(jìn)程管理等內(nèi)容。 1.常用命令 1.1 文件目錄操作 文件目錄
    的頭像 發(fā)表于 11-17 10:19 ?583次閱讀