Hello! 欢迎来到盒子萌!

linux中如何用rename命令重命名一个文件


avatar
嘉木 2016-10-15 36
rename的参数
rename命令的格式:
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
 第一个参数:被替换掉的字符串
第二个参数:替换成的字符串
第三个参数:匹配要替换的文件模式
 例子:rename  main1.c main.c main1.c  将main1.c重命名为main.c
 rename支持通配符
?    可替代单个字符
*    可替代多个字符
[charset]    可替代charset集中的任意单个字符

例子:文件夹中有这些文件foo1, ..., foo9, foo10, ..., foo278,
 如果使用      rename foo foo0 foo?
会把foo1到foo9的文件重命名为foo01到foo09,重命名的文件只是有4个字符长度名称的文件,文件名中
的foo被替换为foo0。
如果使用      rename foo foo0 foo??
foo01到foo99的所有文件都被重命名为foo001到foo099,只重命名5个字符长度名称的文件,文件名
中的foo被替换为foo0。
如果使用      rename foo foo0 foo*
foo001到foo278的所有文件都被重命名为foo0001到foo0278,所有以foo开头的文件都被重命名。
如果使用      rename foo0 foo foo0[2]*
从foo0200到foo0278的所有文件都被重命名为foo200到foo278,文件名中的foo0被替换为foo。
 rename支持正则表达式
 例子:
 字母的替换rename "s/AA/aa/" *  //把文件名中的AA替换成aa
修改文件的后缀rename "s//.html//.php/" *     //把.html 后缀的改成 .php后缀
批量添加文件后缀rename "s/$//.txt/" * //把所有的文件名都以txt结尾
批量删除文件名rename "s//.txt//" * //把所有以.txt结尾的文件名的.txt删掉

暂无评论

发表评论