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

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

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

在Linux中如何使用shell批量修改文件名

馬哥Linux運(yùn)維 ? 來(lái)源:twt企業(yè)IT社區(qū) ? 作者:yujin2010good ? 2021-09-07 16:06 ? 次閱讀

1、通過(guò)sed替換

[root@node01 wolf]# find / -type f -name wolf.log

/wolf.log

/tmp/wolf.log

/root/wolf/wolf.log

[root@node01 wolf]# sed -i ‘s#wolf#yujing#g’ find / -type f -name wolf.log

[root@node01 wolf]# find / -type f -name “wolf.log” | xargs cat

yujing

yujing

yujing

[root@node01 wolf]#

2、通過(guò)變量子串替換

vi laolang.log

wolf_20170806_1_wolf.jpg

wolf_20170806_2_wolf.jpg

wolf_20170806_3_wolf.jpg

wolf_20170806_4_wolf.jpg

wolf_20170806_5_wolf.jpg

wolf_20170806_6_wolf.jpg

wolf_20170806_7_wolf.jpg

wolf_20170806_8_wolf.jpg

wolf_20170806_9_wolf.jpg

wolf_20170806_10_wolf.jpg

[root@node01 data]# touch cat laolang.log |tr “

” “ ”

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# f=wolf_20170806_10_wolf.jpg

[root@node01 data]# echo $f

wolf_20170806_10_wolf.jpg

[root@node01 data]# echo ${f%wolf*.jpg}

wolf_20170806_10_

[root@node01 data]# mv $f echo ${f%wolf*.jpg}.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# for f in ls *wolf.jpg ;do mv $f echo ${f%wolf*.jpg}.jpg;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

3、修改擴(kuò)展名

把上面的jpg更換為log

[root@node01 data]# f=wolf_20170806_10_.jpg

[root@node01 data]# echo ${f/%jpg/log}

wolf_20170806_10_.log

[root@node01 data]# mv $f ${f/%jpg/log}

[root@node01 data]# ls

apache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpg

apache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpg

cat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

[root@node01 data]# for f in ls *.jpg ;do mv $f ${f/%jpg/log} ;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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

    文章

    11326

    瀏覽量

    209961
  • Shell
    +關(guān)注

    關(guān)注

    1

    文章

    366

    瀏覽量

    23425

原文標(biāo)題:Linux 下使用 shell 批量修改文件名的三種方法

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Labview文件路徑中空格變成問(wèn)號(hào)導(dǎo)致文件無(wú)法打開(kāi)

    *附件:Test.zip使用Labview加載外部文件時(shí),由于文件名的編碼規(guī)則與labview默認(rèn)編碼規(guī)則不一致,如果路徑帶有空格會(huì)導(dǎo)致空格被labview識(shí)別為問(wèn)號(hào),導(dǎo)致文件無(wú)法不
    發(fā)表于 12-16 10:24

    Linux從零到精通:最簡(jiǎn)單的Shell腳本入門教程

    在數(shù)字化時(shí)代的浪潮,Linux操作系統(tǒng)憑借其高效、穩(wěn)定、開(kāi)源的特性,成為了無(wú)數(shù)開(kāi)發(fā)者和系統(tǒng)管理員的首選。 而在Linux的龐大生態(tài)系統(tǒng)Shel
    的頭像 發(fā)表于 12-05 09:56 ?570次閱讀
    <b class='flag-5'>Linux</b>從零到精通:最簡(jiǎn)單的<b class='flag-5'>Shell</b>腳本入門教程

    Linux文件查找

    文件名稱、文件大小、文件修改時(shí)間、屬主屬組、權(quán)限、等等方式。同時(shí)find命令是Linux下必須掌握的。 * find 命令的基本語(yǔ)法如下*
    的頭像 發(fā)表于 12-03 17:09 ?303次閱讀

    Linux系統(tǒng)shell命令解析

    shellLinux系統(tǒng)的用戶界面,提供了用戶與內(nèi)核交互的一種接口,它接收用戶輸入的命令并到送到內(nèi)核去執(zhí)行,因此也被稱為Linux的命令解釋器。
    的頭像 發(fā)表于 11-05 15:40 ?332次閱讀

    TCSH shell 編程入門

    ICer從業(yè)人員最先需要掌握的語(yǔ)言,就是linux shell語(yǔ)言。TCSH是ICer使用最多的Shell語(yǔ)言,可以說(shuō)ICer入門語(yǔ)言從TCSH開(kāi)始。
    發(fā)表于 11-01 10:45 ?0次下載

    嵌入式 學(xué)習(xí)-飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之輸入輸出重定向

    終端)更改為從指定文件獲取。輸出重定向使用方法:1.命令 &gt; 文件名(將命令執(zhí)行的結(jié)果輸出到文件,輸出的結(jié)果會(huì)覆蓋掉
    發(fā)表于 09-24 10:06

    飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之輸入輸出重定向

    重定向使用方法:1.命令 &gt; 文件名(將命令執(zhí)行的結(jié)果輸出到文件,輸出的結(jié)果會(huì)覆蓋掉文件原來(lái)的內(nèi)容)。2.命令 &gt;&gt;
    發(fā)表于 09-23 10:23

    shell基本介紹及常用命令之shell介紹

    一、Shell是什么?我們剛開(kāi)始接觸Linux的時(shí)候,經(jīng)常會(huì)聽(tīng)到工程師提到Shell這個(gè)詞,剛開(kāi)始不知道這是個(gè)干什么的,簡(jiǎn)單的說(shuō),它是一個(gè)應(yīng)用,接收用戶命令,調(diào)用相應(yīng)的內(nèi)核接口函數(shù)或
    發(fā)表于 08-15 09:28

    PDF文件批量打印源代碼

    壓縮包包含可批量打印PDF文件的Python代碼,可以借助PYcharm工具執(zhí)行,實(shí)現(xiàn)多PDF文件同時(shí)打印。
    發(fā)表于 08-08 14:26 ?0次下載

    如何修改buildroot和debian文件系統(tǒng)

    本文檔主要介紹沒(méi)有編譯環(huán)境的情況下,如何修改buildroot和debian文件系統(tǒng)方法,如在buildroot文件系統(tǒng)添加
    的頭像 發(fā)表于 07-22 17:46 ?521次閱讀
    如何<b class='flag-5'>修改</b>buildroot和debian<b class='flag-5'>文件</b>系統(tǒng)

    linux kernel通過(guò)修改鏈接腳本lds文件,如何在esp32的linker.lf文件實(shí)現(xiàn)?

    linux kernel通過(guò)修改鏈接腳本lds文件實(shí)現(xiàn),請(qǐng)問(wèn)如何在esp32的linker.lf文件實(shí)現(xiàn)?
    發(fā)表于 06-26 06:19

    FPGA研發(fā)設(shè)計(jì)規(guī)范的簡(jiǎn)明探討

    每個(gè)module應(yīng)存在于單獨(dú)的源文件,源文件名應(yīng)與其所包含的模塊名相同。每個(gè)設(shè)計(jì)都應(yīng)該有一個(gè)完善的文件頭,包含公司名稱、設(shè)計(jì)者、設(shè)計(jì)時(shí)間、文件名
    的頭像 發(fā)表于 04-26 11:43 ?480次閱讀
    FPGA研發(fā)設(shè)計(jì)規(guī)范的簡(jiǎn)明探討

    請(qǐng)問(wèn)stm32f429如何顯示u盤的中文文件名?

    大家有沒(méi)有用f429實(shí)現(xiàn)顯示u盤中文文件名的功能?如何實(shí)現(xiàn)能說(shuō)一下嗎?
    發(fā)表于 04-17 08:23

    使用FATFSfopen函數(shù)創(chuàng)建新文件名稱時(shí),有什么方法可以增加字符長(zhǎng)度嗎?

    使用FATFSfopen函數(shù)創(chuàng)建新文件名稱時(shí),發(fā)現(xiàn)txt文件名長(zhǎng)度不能超過(guò)8個(gè)英文字符,請(qǐng)問(wèn)有什么方法可以增加字符長(zhǎng)度嗎?
    發(fā)表于 03-28 08:39

    Linux系統(tǒng)設(shè)置環(huán)境變量的方法和技巧

    Linux中環(huán)境變量是一種保存有關(guān)系統(tǒng)環(huán)境配置的信息的對(duì)象。它們被廣泛用于存儲(chǔ)有關(guān)系統(tǒng)操作的信息比如路徑、文件名等。通過(guò)合理配置環(huán)境變量我們可以方便地訪問(wèn)和執(zhí)行各種命令和程序。
    的頭像 發(fā)表于 02-01 11:09 ?1727次閱讀
    <b class='flag-5'>Linux</b>系統(tǒng)<b class='flag-5'>中</b>設(shè)置環(huán)境變量的方法和技巧