小弟刚接触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集 ...