校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Linux rename命令批量重命名的方法

Linux rename命令批量重命名的方法

熱門標簽:合力億捷外呼系統如何解壓安裝 地圖標注和視頻彩鈴制作生意 南通電銷外呼系統排名 南京電銷外呼系統廠家 營業廳外呼系統有錄音嗎 滁州外呼系統接口對接 宿松百度地圖標注 信陽智能外呼系統聯系方式 地圖標注怎么兼職

Linux的 rename 命令有兩個版本,一個是C語言版本的,一個是Perl語言版本的,早期的Linux發行版基本上使用的是C語言版本的,現在已經很難見到C語言版本的了,由于歷史原因,在Perl語言大紅大紫的時候,Linux的工具開發者們信仰Perl能取代C,所以大部分工具原來是C版本的都被Perl改寫了,因為Perl版本的支持正則處理,所以功能更加強大,已經不再需要C語言版本的了。

如何區分系統里的rename命令是哪個版本的?

輸入 man rename 看到第一行是

RENAME(1) Linux Programmer’s Manual RENAME(1)

那么 這個就是C語言版本的。

而如果出現的是:

RENAME(1)    Perl Programmers Reference Guide    RENAME(1)

這個就是Perl版本的了!

兩個版本的語法差異:

C語言的,按照man上面的注解,

rename的語法格式是:

rename fromtofile

這個命令有三個參數,分別是 from : 修改什么名字, to:改成什么名字, file 需要修改的文件是哪些。

用法示例:

比如,有一批文件,都是以 log開頭的, log001.txt,  log002.txt ……. 一直到 log100.txt

現在想要把這批文件的log全部替換為 history

rename  log history log*

這句命令的意思很明白了,把 以 log開頭的所有文件中的 log字符替換為 history

這樣替換后的文件是: history001.txt,  history002.txt ….. 一直到 history100.txt

rename C語言版本的另一個man示例是把后綴名批量修改,

比如我們要將所有 jpeg的后綴名圖片文件修改為 jpg文件。

rename .jpeg.jpg*.jpeg

這樣,所有以 .jpeg擴展的后綴名全部被修改為 .jpg

現在總結一下rename C語言版本所能實現的功能: 批量修改文件名,結果是每個文件會被用相同的一個字符串替換掉!也就是說,無法實現諸如循環 然后按編號重命名!

Perl 版本的批量重命名,帶有Perl的好處是,你可以使用正則表達式來完成很奇特的功能。

perl 版本的參數格式:

rename  perlexprfiles

注意,perl版本的rename只有兩個參數,第一個參數為perl正則表達式,第二個參數為所要處理的文件

man rename的幫助示例:

1) 有一批文件,以 .bak結尾,現在想把這些 .bak 統統去掉。

rename     's/\.bak$//'       *.bak
這個命令很簡單,因為我還沒有系統學習過perl,我不知道perl里替換字符串是不是這么干的,但sed是這么干的,所以如果你有sed或者tr基礎,很容易明白,這個替換和sed里的正則語法是一模一樣的。

2) 把所有文件名內含有大小字母的,修改為小寫字母。

rename      'y/A-Z/a-z/'      *
依然和sed的替換語法一樣,不用多解釋,如果看不懂的話,可以系統學習一下sed先。

還有幾個比較實用的例子:

批量去掉文件名里的空格

Linux文件名本來是不支持空格的,不知道什么時候允許了,當然,在命令行調用文件的時候,空格是很有問題滴,比如你 原來可以直接  mv  oldfile  newfile  但有空格就不行了 , 得加雙引號: mv “oldfile”  “newfile” 或者用反斜杠轉移  \[] ,這樣還好,但如果你直接把含有空格的圖片名引入 Latex文檔,Latex生成pdf的時候會直接打印出文件名,之前這個問題苦惱了我很久,我生成的pdf怎么老是出現文件名呢?后來才發現原來是文件名內含有空格的問題!windows系統下生成的文件名是天生含有空格的,雖然很討厭,但有些惠普掃描儀生成的圖片默認就加入了空格,沒有辦法,只好去掉他,在系統研究rename命令前,我是用 mv 去除空格的。

網上流程的兩個去空格的版本:

1) tr 版:


復制代碼
代碼如下:

find . -type f -name "* *" -print |
while read name; do
na=$(echo $name | tr ' ' '_')
if [[ $name != $na ]]; then
mv "$name" $na
fi
done

這個版本以前我一直用的,不知道哪個網上搜刮來的,當時還沒有系統的學習過 tr/sed/awk命令。

注解一下,很好理解, find . type f -name “* *” -print 這一句是查找當前目錄下所有類型為普通文件的 并且名字之中含有空格的文件,并打印出來,其實 find默認就是打印的 這個 -print 多余了,然后 通過管道傳輸給 while 循環讀取,文件名放到 name 變量里,用 tr 命令 替換空格為 下劃線。 下面判斷如果執行后的名稱不相同,使用 mv 命令重命名。但這個if判斷可有可無,因為find已經查詢了所有文件名中含有空格的,那么經過 tr 命令后, $na變量肯定不等于 $name 變量的。

所以這段代碼可以簡化:


復制代碼
代碼如下:

find . -type f -name "* *" |
while read name; do
na=$(echo $name | tr ' ' '_')
mv "$name" "$na"nbsp;
done

tr 可以看著是 sed 的一個精簡版本,tr 用下劃線來替換空格。

還有一個 是 sed 版本實現:

for f in *;do mv "$f" `echo "$f" | sed 's/[ ]\+/_/g' `; done
這里的 sed表達式還可以這樣寫:

sed 's/[[:space:]]\+/_/g'
不過記住,sed里的出現一次或多次的加號是需要添加反斜杠的。即:\+

這樣就可以了。

好了,這兩種辦法都太他媽羅嗦了,看看rename實現吧:

rename      's/[ ]+/_/g'       *
OK就這么簡單。

方括號內的空格可以用 [:space:]代替,

即可以寫成 ‘s/[[:space:]]+/_/g’

這里注意,rename 采用的是標準perl正則語法,所以無須將 加號轉變為反斜杠加號 。即 + 不能修改為 \+,否則替換失敗。

還有幾個好玩的例子:

比如統一在文件頭部添加上 hello

rename         's/^/hello/'       *
統一把.html擴展名修改為 .htm

rename          's/.html$/.htm/'      *
統一在尾部追加 .zip后綴:

rename          's/$/.zip/'      *
統一去掉.zip后綴:

rename          's/.zip$//'      *
規則化數字編號名,比如 1.jpg, 2.jpg ….. 100.jpg , 現在要使文件名全部三位即 1.jpg …. 001.jpg

運行兩次命令:


復制代碼
代碼如下:

rename 's/^/00/' [0-9].jpg
# 這一步把 1.jpg ..... 9.jpg 變幻為 001.jpg .... 009.jpg
rename 's/^/0/' [0-9][0-9].jpg
# 這一步把 10.jpg ..... 99.jpg 變幻為 010.jpg ..... 090.jpg

Ok ,rename就研究了這么多,暫時不知道如何在rename中引入動態變量,比如 $i++

我測試過 i=0;  rename -n “s/^.*$/$((++i))/”   *  執行后i被自增了1,并非想我想像中那樣,可以在每操作一個文件自增一,猜想可能是因為rename批量實現的,導致++i只計算一次!

-n 用來測試rename過程,并不直接運行,可以查看測試效果后,然后再運行。

標簽:麗水 新余 潛江 銅陵 保定 運城 衢州 山南

巨人網絡通訊聲明:本文標題《Linux rename命令批量重命名的方法》,本文關鍵詞  Linux,rename,命令,批量,重命名,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux rename命令批量重命名的方法》相關的同類信息!
  • 本頁收集關于Linux rename命令批量重命名的方法的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    午夜精品久久久久久久久| 亚洲国产经典视频| 精品国产乱码久久久久久影片| 一区二区三区波多野结衣在线观看| 91麻豆免费看片| 亚洲一区二区精品3399| 欧美日韩中文另类| 精品在线一区二区| 亚洲欧美自拍偷拍色图| 在线播放国产精品二区一二区四区| 美女脱光内衣内裤视频久久网站 | 亚洲国产精品久久久久婷婷884| 色先锋久久av资源部| 午夜精品久久久久久久| 久久欧美一区二区| 91福利视频在线| 国产成人亚洲综合a∨猫咪| 夜夜嗨av一区二区三区四季av| 欧美一级日韩不卡播放免费| 成人精品在线视频观看| 图片区小说区区亚洲影院| 国产精品丝袜黑色高跟| 欧美电影影音先锋| 91亚洲精品久久久蜜桃网站| 免费看欧美女人艹b| 一区二区三区在线免费| 久久亚洲精品国产精品紫薇| 一本久久综合亚洲鲁鲁五月天| 美女一区二区三区在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 天天做天天摸天天爽国产一区 | 五月天欧美精品| 国产人伦精品一区二区| 这里是久久伊人| 91视频观看视频| 国产一区二区三区四区五区入口| 亚洲国产一区二区视频| 国产精品成人免费精品自在线观看 | 26uuu亚洲综合色欧美 | www国产亚洲精品久久麻豆| 日本道免费精品一区二区三区| 国产一区二区免费看| 视频一区中文字幕| 午夜精品成人在线视频| 亚洲欧美aⅴ...| 中文字幕免费不卡| 精品剧情在线观看| 欧美成人a视频| 日韩一区二区三区高清免费看看| 欧美性色欧美a在线播放| av亚洲精华国产精华精| 高清在线成人网| 国产99一区视频免费| 激情久久五月天| 天天色综合天天| 午夜亚洲国产au精品一区二区| 亚洲欧美日韩中文播放| 色伊人久久综合中文字幕| 亚洲成精国产精品女| 国产日韩欧美a| 欧美日韩国产高清一区二区| 色呦呦国产精品| 日本乱人伦一区| 欧美在线观看视频在线| 欧美日韩亚洲另类| 91精品国产一区二区三区香蕉| 欧美高清精品3d| 精品国精品国产尤物美女| 精品国产乱码久久久久久图片 | 日韩欧美国产三级| 91精品国产福利在线观看| 欧美不卡激情三级在线观看| 欧美成人精精品一区二区频| 久久午夜电影网| 国产精品午夜免费| 中文字幕综合网| 亚洲国产欧美在线人成| 午夜欧美视频在线观看| 麻豆成人久久精品二区三区小说| 蜜臀a∨国产成人精品| 加勒比av一区二区| 成人avav在线| 91精品婷婷国产综合久久 | 国产精品久久国产精麻豆99网站| 综合激情网...| 亚洲午夜私人影院| 黄色精品一二区| 91麻豆精品视频| 制服丝袜亚洲色图| 国产精品福利一区| 日韩在线观看一区二区| 国产精品18久久久久久久网站| 99精品国产视频| 日本sm残虐另类| 成人激情小说乱人伦| 欧美吻胸吃奶大尺度电影| 精品福利一二区| 一区二区三区自拍| 国产一区二区三区av电影| 91久久久免费一区二区| 久久久久久久电影| 亚洲成人动漫在线免费观看| 国产精品1区二区.| 日韩欧美一级二级| 自拍偷自拍亚洲精品播放| 国产主播一区二区三区| 欧美日韩你懂得| 中文字幕一区二区在线播放| 久久不见久久见免费视频1| 色偷偷88欧美精品久久久| 欧美www视频| 午夜一区二区三区视频| 99久久国产免费看| 久久精品欧美一区二区三区不卡| 国产精品欧美一区二区三区| 蜜臀av一区二区在线免费观看| 在线中文字幕不卡| 综合色天天鬼久久鬼色| 成人avav影音| 国产精品白丝在线| 国产成人av一区二区| 久久久久高清精品| 国产精品中文字幕一区二区三区| 91精品国产欧美一区二区 | 亚洲国产日韩av| 日本精品裸体写真集在线观看 | 精品少妇一区二区三区在线播放| 亚洲精品水蜜桃| 99视频精品在线| 国产精品久久久久一区二区三区 | 国产精品欧美一区喷水| 成人综合婷婷国产精品久久蜜臀| 26uuu国产日韩综合| 激情五月婷婷综合网| 91精品久久久久久久久99蜜臂| 亚洲区小说区图片区qvod| 成人av在线网站| 国产精品美女久久久久久久网站| 国产剧情在线观看一区二区| 精品美女在线播放| 国产露脸91国语对白| 国产精品第一页第二页第三页| 91一区二区三区在线播放| 亚洲卡通欧美制服中文| 欧美色区777第一页| 青青草原综合久久大伊人精品 | 美日韩黄色大片| 精品国产91乱码一区二区三区 | 成人国产一区二区三区精品| 中文字幕一区二区三区精华液 | 国产酒店精品激情| 欧美国产精品久久| 91在线视频播放| 亚洲国产日韩a在线播放性色| 欧美一区二区观看视频| 国产在线一区二区| 亚洲色图另类专区| 制服丝袜av成人在线看| 成人一区二区三区| 亚洲电影一区二区三区| 欧美不卡视频一区| 色综合视频在线观看| 在线播放日韩导航| 国产成人精品影视| 一区二区不卡在线视频 午夜欧美不卡在| 欧美日韩一区视频| 国产成人午夜高潮毛片| 在线观看一区二区视频| 蜜桃一区二区三区在线| 日韩毛片视频在线看| 欧美精品 日韩| 色综合久久中文字幕综合网| 久久er99精品| 五月综合激情日本mⅴ| 亚洲国产精品ⅴa在线观看| 欧美日韩不卡视频| 99re成人精品视频| 国产精品一区二区三区乱码| 午夜精品福利在线| 一级精品视频在线观看宜春院 | 国产欧美一区二区精品婷婷| 91精品在线免费| 欧美日韩久久久一区| 日本韩国欧美国产| 91香蕉视频mp4| 成人黄色大片在线观看| 国产丶欧美丶日本不卡视频| 久热成人在线视频| 日韩成人午夜精品| 亚洲成人综合在线| 亚洲狠狠爱一区二区三区| 中文字幕亚洲区| 久久久久久免费网| 亚洲精品一区二区三区影院 | 欧美一级xxx| 色综合夜色一区| 国内精品久久久久影院薰衣草| 亚洲高清免费观看| 久久婷婷国产综合精品青草| 欧美日韩一级片网站|