成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在 Linux 上重命名一組文件

開發 前端
要用單個命令重命名一組文件,請使用 rename 命令。它需要使用正則表達式,并且可以在開始前告訴你會有什么更改。

 幾十年來,Linux 用戶一直使用 mv 命令重命名文件。它很簡單,并且能做到你要做的。但有時你需要重命名一大組文件。在這種情況下,rename 命令可以使這個任務更容易。它只需要一些正則表達式的技巧。 

[[275645]]

與 mv 命令不同,rename 不允許你簡單地指定舊名稱和新名稱。相反,它使用類似于 Perl 中的正則表達式。在下面的例子中,s 指定我們將第一個字符串替換為第二個字符串(舊的),從而將 this.new 變為 this.old。

  1. $ rename 's/new/old/' this.new 
  2. $ ls this* 
  3. this.old 

使用 mv this.new this.old 可以更容易地進行更改一個,但是將字符串 this 變成通配符 *,你可以用一條命令將所有的 *.new 文件重命名為 *.old:

  1. $ ls *.new 
  2. report.new  schedule.new  stats.new  this.new 
  3. $ rename 's/new/old/' *.new 
  4. $ ls *.old 
  5. report.old  schedule.old  stats.old  this.old 

正如你所料,rename 命令不限于更改文件擴展名。如果你需要將名為 report.* 的文件更改為 review.*,那么可以使用以下命令做到:

  1. $ rename 's/report/review/' * 

正則表達式中的字符串可以更改文件名的任何部分,無論是文件名還是擴展名。

  1. $ rename 's/123/124/' * 
  2. $ ls *124* 
  3. status.124  report124.txt 

如果你在 rename 命令中添加 -v 選項,那么該命令將提供一些反饋,以便你可以看到所做的更改,或許會包含你沒注意的。這讓你注意到并按需還原更改。

  1. $ rename -v 's/123/124/' * 
  2. status.123 renamed as status.124 
  3. report123.txt renamed as report124.txt 

另一方面,使用 -n(或 --nono)選項會使 rename 命令告訴你將要做的但不會實際做的更改。這可以讓你免于執行不不想要的操作,然后再還原更改。

  1. $ rename -n 's/old/save/' * 
  2. rename(logger.man-old, logger.man-save) 
  3. rename(lyrics.txt-old, lyrics.txt-save) 
  4. rename(olderfile-, saveerfile-) 
  5. rename(oldfile, savefile) 
  6. rename(review.old, review.save) 
  7. rename(schedule.old, schedule.save) 
  8. rename(stats.old, stats.save) 
  9. rename(this.old, this.save) 

如果你對這些更改滿意,那么就可以運行不帶 -n 選項的命令來更改文件名。

但請注意,正則表達式中的 . 不會被視為句點,而是作為匹配任何字符的通配符。上面和下面的示例中的一些更改可能不是輸入命令的人希望的。

  1. $ rename -n 's/.old/.save/' * 
  2. rename(logger.man-old, logger.man.save) 
  3. rename(lyrics.txt-old, lyrics.txt.save) 
  4. rename(review.old, review.save) 
  5. rename(schedule.old, schedule.save) 
  6. rename(stats.old, stats.save) 
  7. rename(this.old, this.save) 

為確保句點按照字面意思執行,請在它的前面加一個反斜杠。這將使其不被解釋為通配符并匹配任何字符。請注意,進行此更改時,僅選擇了 .old 文件。

  1. $ rename -n 's/\.old/.save/' * 
  2. rename(review.old, review.save) 
  3. rename(schedule.old, schedule.save) 
  4. rename(stats.old, stats.save) 
  5. rename(this.old, this.save) 

下面的命令會將文件名中的所有大寫字母更改為小寫,除了使用 -n 選項來確保我們在命令執行之前檢查將做的修改。注意在正則表達式中使用了 y,這是改變大小寫所必需的。

  1. $ rename -n 'y/A-Z/a-z/' W* 
  2. rename(WARNING_SIGN.pdf, warning_sign.pdf) 
  3. rename(Will_Gardner_buttons.pdf, will_gardner_buttons.pdf) 
  4. rename(Wingding_Invites.pdf, wingding_invites.pdf) 
  5. rename(WOW-buttons.pdf, wow-buttons.pdf) 

在上面的例子中,我們將所有大寫字母更改為了小寫,但這僅對以大寫字母 W 開頭的文件名。

總結

當你需要重命名大量文件時,rename 命令非常有用。請注意不要做比預期更多的更改。請記住,-n(或者 --nono)選項可以幫助你避免耗時的錯誤。

責任編輯:華軒 來源: Linux中國
相關推薦

2019-11-11 10:20:10

Linux重命名命令

2018-10-31 15:30:11

Linux命令重命名

2018-06-25 13:10:16

Linux復制重命名

2019-11-05 09:40:01

Windows 10重命名文件

2009-12-22 15:28:51

Linux批量重命名文

2018-07-20 14:20:24

Linux用戶組管理員

2019-04-18 10:35:55

Windows 10重命名文件夾

2010-03-03 16:11:01

Linux ubant

2023-11-25 17:13:49

Linux重命名文件

2010-03-09 15:23:30

Linux批量重命名

2020-12-28 06:44:45

FedoraLinux RPM文件

2024-09-04 08:02:12

2019-06-10 08:15:52

Linux命令

2010-11-19 13:48:18

2011-03-04 09:48:21

PureFTPd

2019-02-25 15:36:52

Linux復制文件遠程系統

2021-10-12 08:43:19

LinuxSambaWindows

2021-10-02 10:10:47

LinuxBusyBox命令

2018-12-11 11:00:50

Linux字體命令

2020-04-21 14:21:31

LinuxPython
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美女一区| 日韩亚洲一区二区 | 精品久久久久久国产 | 日本高清视频网站 | 黑人粗黑大躁护士 | 精品91久久 | 成人免费在线观看视频 | 日韩一区二区在线视频 | 午夜精品久久久久久久 | 狠狠干网站 | 久久神马 | 精品电影| 成人欧美日韩一区二区三区 | a免费视频 | 啪啪免费| 国产精品国产精品 | 五月天国产在线 | 日韩精品亚洲专区在线观看 | 91欧美精品成人综合在线观看 | 日韩一区中文字幕 | 成人h视频| 日韩中文字幕第一页 | 久久免费精品视频 | 国产在线精品一区二区三区 | 日本人麻豆| 欧美一级片 | 亚洲精品乱 | 亚洲精品福利在线 | 欧美高清dvd | 精品国产91乱码一区二区三区 | 国产精品久久久久久吹潮日韩动画 | 国产成人综合在线 | 超碰日本| 无码日韩精品一区二区免费 | 国产欧美精品区一区二区三区 | 一区二区在线不卡 | 国产成人综合在线 | 久久久久国产精品一区二区 | 久色网| av大片在线观看 | 国产精品一区二区无线 |