小弟剛接觸Linux下的Ubuntu系統,用的是Bash,
話說某天,某個學長經過我的座位看我一個檔點一下後,按F2,再更改檔名,
然後換下一個,他看了我改了五、六個檔吧,
終於受不了了,「學弟啊!這種東西,你寫個Bash就可以在30秒內搞定它了!」,
我眼睛發光的看著他,但是他在趕論文,隨手指著一個同學(女的)學姐,
她也會寫Bash,不會的請教她,
然就就飄回自已的座位寫論文了,
真的是「飄」回去 … 好像剛才那一段對話從來沒有發生過,
學姐也看都沒看我一眼,
我 … 好想寫個「慘」字 …
好了,前情提要就是這樣 …
接下來就是我現在面對的情況:
我有個資料夾…就叫它「OnePiece」吧
裡面有…
「海賊王 第1集 繁體中文翻譯.mp4」
「海賊王 第2集 繁體中文翻譯.mp4」
「海賊王 第3集 繁體中文翻譯.mp4」
「海賊王 第4集 繁體中文翻譯.mp4」
「海賊王 第5集 繁體中文翻譯.mp4」
…
「海賊王 第51集 繁體中文翻譯.mp4」
「海賊王 第52集 繁體中文翻譯.mp4」
「海賊王 第53集 繁體中文翻譯.mp4」
「海賊王 第54集 繁體中文翻譯.mp4」
「海賊王 第55集 繁體中文翻譯.mp4」
…
「海賊王 第796集 繁體中文翻譯.mp4」
「海賊王 第797集 繁體中文翻譯.mp4」
「海賊王 第798集 繁體中文翻譯.mp4」
「海賊王 第799集 繁體中文翻譯.mp4」
「海賊王 第800集 繁體中文翻譯.mp4」
…
因小弟Bash功力低淺,故特來網上求教各高手、神級人物,是否可以寫一個Bash幫忙更改
檔名的呢?
但希望是集數的數字可以留下來,
也就是如「海賊王 第800集 繁體中文翻譯.mp4」可以變成「OnePiece v800.mp4」?
久聞PTT高手如雲,又願意伸出援手,小弟這次真心想要請求幫忙,如不嫌棄,請助小弟
一臂之力!
小弟將來實力長成,必像大眾高手一樣儘力不計酬勞幫忙真心需要幫忙之人!
成謝再三!
作者: longlongint (華哥爾) 2017-08-18 22:46:00
for 迴圈搭配硬尻檔名就可以了 只是沒有很通用XD
對不起,打字錯誤!最後一行字是「感謝再三」!小弟現在的感覺就是和「絕望幽靈」比絕望輸了的感覺!人生無望!
作者: brli7848 (無理阿?) 2017-08-15 16:21:00
Dolphin內建批量重新命名
作者:
bibo9901 (function(){})()
2017-08-15 16:49:00rename 's/賊王 第800集 繁體中文翻譯/OnePiecev800/' *啊…看錯XDD
作者:
hijkxyzuw (i,j,k) ×(x,y,z)
2017-08-15 16:55:00rename -e 's/^.+(\d+).+\.mp4/OnePiece v$1.mp4/' *
作者: dou0228 (7777) 2017-08-15 22:00:00
有種看到某位博士發言的感覺
hijkxyzuw高手的解法太過高深…願意給小弟解釋一下嗎?
作者:
HamalAri (哈馬‧阿里)
2017-08-15 23:41:00rename 要小心版本可能不同util-linux/ util-linux-ng /perl 提供的不太一樣
我系統的 rename 就不吃 -e 參數若支援的話的確很好用,一行簡單單純語法可搞定
作者:
carylorrk (carylorrk)
2017-08-21 15:01:00for i in `seq 1 800`; do mv *$i* v$i.mp4; done
樓上你第一次進迴圈, 就把檔名裡有 1 的都抓出來鞭了第1集 第10集 第1x集 第21集 第1xx集 ...