zoukankan      html  css  js  c++  java
  • Ubuntu中利用rename批量重命名

    1.简介:

    通常在机器视觉的学习过程中,需要批量处理一些图片,通常会涉及到批量重命名的问题,可以利用rename命令快速实现图片的批量重命名

    2.rename命令格式:

    1 rename [-v] [-n] [-f] perlexpr [filenames]
    2 
    3 -v(verbose)打印被成功重命名的文件
    4 -n(no-act)只显示将被重命名的文件,而非实际进行重命名操作
    5 -f(force)覆盖已经存在的文件
    6 perlexprPerl语言格式的正则表达式
    7 files需要被替换的文件(比如*.c、*.h、*jpg),如果没给出文件名,将从标准输入读

    注意:通常我们先使用 -n 参数对做测试,修改的结果会在终端显示,看是否重命名为你想要的效果,若达到效果,则把 -n 参数去掉,进行实际操作

    3.实例讲解:

    【想要把 test(1).jpg 形式改为:test_test1.jpg】

    (1)去掉括号:

    rename -n 's/[()]//g' *.jpg
    
    解释:
    -n直接打印结果在终端中而非实际执行
    引号中是perl的正则表达式,用来匹配和替换,s代表substitution,替换的意思
    [()]代表匹配[]中的内容
    //两个斜杠之间是空代表替换为空的内容,相当于删除
    g代表全部匹配,不加g的话默认只会匹配一个括号

    效果:

    可以看到是括号已经去掉了,达到了自己想要的效果,接下来把 -n 去掉,进行实际操作:

    rename 's/[()]//g' *.jpg

    这时候可以看到指定目录下的图片名已经更改为了:

    2.接下继续修改【改为test_test1.jpg形式】:

    rename -n 's/^/test_/' *.jpg
    
    解释:
    s-替换
    ^-在文件名称开头加字符
    test_-将名称前面添加上test_

    效果:

    达到效果,将 -n 参数去掉,实际执行【命令及效果如图】:

    4.参考资料

  • 相关阅读:
    [PyJs系列介绍]一、从commonjs和seajs说起
    [PyJs系列介绍]五、回顾及展望
    [PyJs系列介绍]三、编译与上线
    url decode problem
    [PyJs系列介绍]二、缘起和核心概念
    ControlJS介绍
    css,javascript的预加载
    [PyJs系列介绍]四、代理与插件
    webservice上传图片
    提高IIS7并发连接数
  • 原文地址:https://www.cnblogs.com/ilym/p/8321161.html
Copyright © 2011-2022 走看看