下载了《生活大爆炸》打算重温,但是文件名实在是太过长了啊,受不了啊!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| charles@TCRMBP➜ Season03 ls 生活大爆炸.The.Big.Bang.Theory.S03E01.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E02.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E03.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E04.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E06.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E07.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E08.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E09.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E10.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E11.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E12.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E13.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E14.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E15.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E16.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E17.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E18.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E19.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E20.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E21.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E22.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4 生活大爆炸.The.Big.Bang.Theory.S03E23.Chi_Eng.HDTV-PSP.480x272-YYeTs人人影视.mp4
|
如上,在命令行下怎么批量重命名,去掉“生活大爆炸.The.Big.Bang.Theory.”部分,只留下后面部分呢?其实以前我也查找过类似的shell命令,但是每次都不记得,这次所幸写个文章记录下来。1 2 3 4 5 6
| for filename in `ls grep "生活大*"`; do mv $filename `echo $filenamecut -c 27-`; done
|
上面,第一行和第三行的分号,不是必须的,本来这个指令,可以写在一行里面,所以有分号,这里为了看方便,格式化了一下。
这个例子,只是去除了文件名的前缀,功能就是把前27个字节去掉,如此而已,如果有别的需求,可以在这个基础上自由发挥。