说到重命名,相信大多数和我一样的Linux初学者想到的就是mv ,简单的重命名当然使用mv已经足够,但是比较复杂的重命名(比如根据正则重命名)就需要用到更顺手的工具了,那就是rename

用法

$ rename [options] [perlexpr] [files]

options

-v 显示成功重命名的文件
-n 只显示将被重命名的文件,但是不进行重命名
-f 如果文件已存在,覆盖
-e 表明需要需要被执行的code,如果没有-e,那么第一个参数将被当成code

perlexpr

这是一个Perl表达式,文件名应当在其中被改变,没学过Perl也没关系,这个命令用到的语法很像sed,容易上手。

files

需要重命名的文件

示例

最容易掌握命令的方法就是动手试试了,下面来看看一些例子

去除文件扩展名

例如我们想把文件扩展名为.bak 的文件扩展名去掉,可以这样

$ rename 's/\.bak$//' *.bak

*.bak 为通配符(wildcard),会被shell展开为各个文件名

去除文件名中的空格

$ rename 's/ //g' *

g 是global的意思,替换所有的空格为空字符(也就是删除啦)

文件名转为小写

$ rename 'y/A-Z/a-z/' *

这里用到了y 意思是翻译,前后两个字符集是对应的,遇到前面一个字符集(A-Z)里面的字符就换成后面一个字符集(a-z)里面的相应字符。

使用分组

现在有一堆文件,他们的文件名模式是这样的第一部分-haha-第二部分.file ,现在要把中间的-haha- 删去并把第一部分的字符串和第二部分的字符串对调,可以这样:

$ rename 's/(.*)-haha-(.*)(.file)/$2$1$3/' *.file

对分组不了解可以去补补正则表达式了。

Linux-重命名命令rename相关推荐

  1. 重新命名的linux命令,Linux 重命名命令自制详细介绍

    Linux 重命名命令 相比于Windows上的ren命名,Linux还真的是没有一个特定的重命名的命令.(虽然可以间接的使用mv来实现).下面我就来自己写一个简单的重命名命令. 准备工作 操作系统: ...

  2. Linux 重命名文件名 rename

    如何通过在文件的开始添加一个公共字符串重命名多个文件 for file in *; do mv -v ${file} new_${file}; done 文件名替换字符串,在所有txt文件名中& ...

  3. linux重命名命令

    https://www.cnblogs.com/mafeng/p/8000355.html

  4. linux重命名文件或文件夹(mv命令 rename命令)

    转自:http://www.cnblogs.com/yes123/p/3919337.html 在linux下重命名文件或目录,可以使用mv命令或rename命令,这里分享下二者的使用方法. mv命令 ...

  5. linux文件重命名命令

    linux下重命名文件有两种方式: 1.较简单的处理命令:mv mv 原文件名 新文件名 如:mv myFile newName 将MyFile重命名为newName. 2.linux提供了一个重命名 ...

  6. linux使用命令重命名_如何在Linux上使用重命名命令

    linux使用命令重命名 Fatmawati Achmad Zaenuri/Shutterstock.comFatmawati Achmad Zaenuri / Shutterstock.com Ge ...

  7. Linux 批量重命名工具 rename 的使用

    Linux 批量重命名工具 rename 的使用 安装 如果还没有安装,先执行安装命令 sudo apt-get install rename 用法 安装后,我们执行rename --help 命令来 ...

  8. Linux/Mac实现下alias重命名命令永久生效

    在Linux中为我们提供了一个很方便的重命名命令 alias ,它的作用为如果要执行命令太长又不符合用户的习惯,那么我们可以为它指定一个别名.例如:原本创建文件夹的命令为 mkdir,你可以使用 al ...

  9. ren命令linux,Excel2003使用重命名命令ren步骤

    Excel2003使用重命名命令ren步骤 导语:很多新手朋友们遇到了这样的一个问题就是如何批量处理修改文件名?大家可能都没有发现在excel中有一个重命名命令ren,使用它可以快速完成批量处理文件名 ...

  10. linux重命名乱码文件,Linux中重命名乱码文件

    Linux下,如何将一个乱码的文件进行重命名 方法一: 命令格式:mv $(ls |egrep "[^a-zA-Z0-9.-]") tandao.tx [root@nb o]# l ...

最新文章

  1. 论文笔记:Triplet Network
  2. 克隆 Linux系统盘,linux系统克隆系统盘
  3. 52个有用的 Docker 工具
  4. python语言整数类型-Python 的内置数值类型
  5. 教你玩转CSS 属性选择器
  6. 【LeetCode笔记】剑指 Offer 56 . 数组中数字出现的次数(Java、位运算)
  7. 欢迎来到Python循环小课堂
  8. 罗永浩谈乔纳森离职:乔布斯才是苹果的灵魂设计师
  9. 程序设计思路报告快递运输路线优化系统
  10. Ubuntu16.04死机解决方案
  11. 1622: [Usaco2008 Open]Word Power 名字的能量
  12. SSM框架原理,作用及使用方法,详细解释
  13. Spring Aop 报错 ...but was actually of type 'com.sun.proxy.$Proxy**'的解决方案
  14. ElasticSearch常用搜索命令整理(长期更新...)
  15. JavaWeb学习笔记(七)—— JSP
  16. 百度云智学院云计算在线认证考试课程纲要与重点,考前必看!
  17. 【华人学者风采】周昆 浙江大学
  18. 普通磨削、超声辅助磨削表面形貌代码及表面轮廓提取
  19. 奇异值分解的定义及应用
  20. 爬取豆瓣图书排行榜前十并使用图表的形式展示

热门文章

  1. 零空间、点积与对偶性
  2. Spring boot 启动后没反应
  3. java分页(java分页插件pagehelper)
  4. 四大运营商频段最新划分情况
  5. Python 抓取微信公众号账号信息
  6. Gradle报错:Could not find ××× ,‘dependencies.× .× ‘ for × must specify an absolute path but is ${env.
  7. 一些有用的Latex模板(持续更新)
  8. Goroutines和线程对比
  9. 【转】Vmware 8.0注册码 序列号 key 注册方法
  10. MCU器件选型---主流厂商