Wid*_*eye 12 linux bash rename
我有一堆媒体文件,如下所示:
tvshow.s01e11]Bloodlines.avi
tvshow.s01e12]suffer.avi
tvshow.s01e13]NotMe.avi
Run Code Online (Sandbox Code Playgroud)
我想将它们重命名为
tvshow.s01e11.avi
tvshow.s01e12.avi
tvshow.s01e13.avi
Run Code Online (Sandbox Code Playgroud)
我试过使用重命名,但显然我没有得到正确的语法,因为它失败了。
ilk*_*chu 14
在 shell 中,你可以简单地做:
for x in *]*.avi ; do
mv -i "$x" "${x%]*.avi}.avi"
done
Run Code Online (Sandbox Code Playgroud)
shell 可以生成一个文件名列表,只需一个常规的 glob,并
${var%pattern}从 variable 中的字符串末尾删除(最短)匹配模式var。由于最终的扩展名始终是.avi,我只是将其与模式一起删除并将其添加回来。使用引号,这也应该适用于包含空格的文件名,例如Fancy Name for a Show.s01e01]Asdf.avi
小智 9
这将重命名文件。您需要 \w* 来表示任意数量的字母数字字符。
rename 's/\]\w*//' *
Run Code Online (Sandbox Code Playgroud)
参考:http : //www.troubleshooters.com/codecorn/littperl/perlreg.htm#UsingSimpleWildcards
| 归档时间: |
|
| 查看次数: |
2963 次 |
| 最近记录: |