Linux批量修改文件名 2016.05.12

最近半个月在疯狂地做一些实验,然后需要批量地对一些文件的名字进行修改,而手工操作极其繁琐,在之前的博文中我说到我用了Cygwin软件,今天就告诉大家如何在Cygwin下批量修改文件名。

mv命令

我们知道在Linux下面 mv 命令有两个功能一个是用于修改文件的名字,另外一个就是移动文件。它有下面几个命令参数:

-b :若需覆盖文件,则覆盖前先行备份。

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

-u :若目标文件已经存在,且 source 比较新,才会更新(update)

-t : –target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

下面举几个例子用于mv 命令

修改文件名

1.显示当前文件

ls -l

total 2

drwxr-xr-x+ 1 Administrator None 0 Nov 10 2015 snipmate.vim

-rwxr-xr-x 1 Administrator None 567 Nov 9 2015 svn.exe.stackdump

-rw-r--r-- 1 Administrator None 5 May 12 17:16 test.txt

2.修改文件名

mvtest.txt test2.txt

3.显示当前文件

$ls -l

total 2

drwxr-xr-x+ 1 Administrator None 0 Nov 10 2015 snipmate.vim

-rwxr-xr-x 1 Administrator None 567 Nov 9 2015 svn.exe.stackdump

-rw-r--r-- 1 Administrator None 5 May 12 17:16 test2.txt

我们发现文件名已经由test.txt变成test2.txt了。

移动文件

1.显示当前文件

ls -l

total 2

drwxr-xr-x+ 1 Administrator None 0 Nov 10 2015 snipmate.vim

-rwxr-xr-x 1 Administrator None 567 Nov 9 2015 svn.exe.stackdump

-rw-r--r-- 1 Administrator None 5 May 12 17:16 test.txt

2.移动文件

mvtest2.txt /home

3.显示当前文件

$ls -l

total 1

drwxr-xr-x+ 1 Administrator None 0 Nov 10 2015 snipmate.vim

-rwxr-xr-x 1 Administrator None 567 Nov 9 2015 svn.exe.stackdump

4.显示/home 目录下的文件

$ls -l /home

total 241

drwxr-xr-x+ 1 Administrator None 0 May 12 18:11 Administrator

drwxr-xr-x+ 1 bearshng None 0 Dec 27 16:47 bearshng

drwxr-xr-x+ 1 Administrator None 0 Nov 9 2015 nerdtree

-rw-r--r-- 1 Administrator None 5 May 12 17:16 test2.txt

drwxr-xr-x+ 1 Administrators None 0 Nov 10 2015 vim_plug

-rwxr-xr-x 1 Administrators None 234132 Nov 9 2015 vim_plug.zip

我们发现/home路径下有test2.txt了。

但是mv有一点就是不能批量修改文件,或者说是批量修改文件很麻烦,如果想批量修改文件的话我们可以使用rename命令

rename命令

rename命令 提供了批量修改文件的功能,尤其是对正则表达式的支持,比如说我可以把当前文件夹下面的所有.avi数据中的走向共和修改为建党伟业 如果我们采用mv 命令我们可能需要很多操作甚至用shell 脚本,但是用rename命令我们一句话就可以完成。

$ls -l |grep '走向共和'

-r-xr-x---+ 1 Administrators None 466607012 Apr 20 11:21 走向共和36.avi

-r-xr-x---+ 1 Administrators None 421534578 Apr 20 11:21 走向共和37.avi

-r-xr-x---+ 1 Administrators None 422871626 Apr 20 11:21 走向共和38.avi

-r-xr-x---+ 1 Administrators None 428641100 Apr 20 11:21 走向共和39.avi

-r-xr-x---+ 1 Administrators None 430550324 Apr 20 11:21 走向共和40.avi

-r-xr-x---+ 1 Administrators None 424906206 Apr 20 11:21 走向共和41.avi

-r-xr-x---+ 1 Administrators None 425702218 Apr 20 11:21 走向共和42.avi

-r-xr-x---+ 1 Administrators None 419122882 Apr 20 11:20 走向共和43.avi

-r-xr-x---+ 1 Administrators None 422362872 Apr 20 11:21 走向共和44.avi

-r-xr-x---+ 1 Administrators None 419778994 Apr 20 11:21 走向共和45.avi

-r-xr-x---+ 1 Administrators None 456214890 Apr 20 11:21 走向共和50.avi

$rename 走向共和 建党伟业 *.avi

$ls -l |grep '.avi'

d---rwx---+ 1 Unknown+User Unknown+Group 0 Nov 14 2014 $RECYCLE.aviBIN

-rwxrwx---+ 1 Administrators None 11566013 Dec 11 2014 CF-Auto-Root-mako-occam-nexus4.avizi p

-rwxrwx---+ 1 Administrators None 377477237 Jul 7 2014 adt-bundle-windows-x86_64-20140624.a vizip

-r-xr-x---+ 1 Administrators None 466607012 Apr 20 11:21 建党伟业36.avi

-r-xr-x---+ 1 Administrators None 421534578 Apr 20 11:21 建党伟业37.avi

-r-xr-x---+ 1 Administrators None 422871626 Apr 20 11:21 建党伟业38.avi

-r-xr-x---+ 1 Administrators None 428641100 Apr 20 11:21 建党伟业39.avi

-r-xr-x---+ 1 Administrators None 430550324 Apr 20 11:21 建党伟业40.avi

-r-xr-x---+ 1 Administrators None 424906206 Apr 20 11:21 建党伟业41.avi

-r-xr-x---+ 1 Administrators None 425702218 Apr 20 11:21 建党伟业42.avi

-r-xr-x---+ 1 Administrators None 419122882 Apr 20 11:20 建党伟业43.avi

-r-xr-x---+ 1 Administrators None 422362872 Apr 20 11:21 建党伟业44.avi

-r-xr-x---+ 1 Administrators None 419778994 Apr 20 11:21 建党伟业45.avi

-r-xr-x---+ 1 Administrators None 456214890 Apr 20 11:21 建党伟业50.avi

rename命令有以下几个参数

Usage:

rename [options]

Options:

-v, –verbose explain what is being done

-s, –symlink act on the target of symlinks

-h, –help display this help and exit

-V, –version output version information and exit

即rename 修改之前的内容 修改之后的内容 要操作的文件名 其它的几个参数命令我现在还没有用到,先不解释。下面我们把建党伟业修改为走向共和

$rename 建党伟业 走向共和 *.avi

$ls -l |grep '.avi'

d---rwx---+ 1 Unknown+User Unknown+Group 0 Nov 14 2014 $RECYCLE.aviBIN

-rwxrwx---+ 1 Administrators None 11566013 Dec 11 2014 CF-Auto-Root-mako-occam-nexus4.avizip

-rwxrwx---+ 1 Administrators None 377477237 Jul 7 2014 adt-bundle-windows-x86_64-20140624.avizip

-r-xr-x---+ 1 Administrators None 466607012 Apr 20 11:21 走向共和36.avi

-r-xr-x---+ 1 Administrators None 421534578 Apr 20 11:21 走向共和37.avi

-r-xr-x---+ 1 Administrators None 422871626 Apr 20 11:21 走向共和38.avi

-r-xr-x---+ 1 Administrators None 428641100 Apr 20 11:21 走向共和39.avi

-r-xr-x---+ 1 Administrators None 430550324 Apr 20 11:21 走向共和40.avi

-r-xr-x---+ 1 Administrators None 424906206 Apr 20 11:21 走向共和41.avi

-r-xr-x---+ 1 Administrators None 425702218 Apr 20 11:21 走向共和42.avi

-r-xr-x---+ 1 Administrators None 419122882 Apr 20 11:20 走向共和43.avi

-r-xr-x---+ 1 Administrators None 422362872 Apr 20 11:21 走向共和44.avi

-r-xr-x---+ 1 Administrators None 419778994 Apr 20 11:21 走向共和45.avi

-r-xr-x---+ 1 Administrators None 456214890 Apr 20 11:21 走向共和50.avi

这样以后批量修改文件名就简单多了,尤其是像我这种对shell 不太熟悉的人。

linux批量过去5小时前文件名,Linux批量修改文件名相关推荐

  1. Linux shell 对于文件的删除,复制,修改文件名等操作

    2019独角兽企业重金招聘Python工程师标准>>> 修改文件名或者修改文件夹名 mv file1 file2 把当前目录下的file1文件名改成file2,如果该目录下有file ...

  2. Java 读取某文件下的所有文件名,并且修改文件名

    这两天有个新需求,管理员想down下某文件下所有的文件,但是文件太多,下载速度太慢,所以就从服务器下把所有文件都扒下来了,可是通过程序上传的文件是以时间戳的形式命名的,所以要把时间戳改成相对应的上传人 ...

  3. linux vi 改文件名,Linux命令符之编辑文本vi命令及修改文件名mv命令

    vi编辑器是全部Unix及Linux系统下标准的编辑器,它用于文本编辑html 语法:linux vi 文本名称            >  有则打开,没有则建立vim 或者编辑器 vi 文本绝 ...

  4. chrome linux添加图标,IT之家学院:Chromebook修改Linux容器安装源教程详解

    在Chrome OS 70稳定版通道系统中谷歌给用户们带来全新UI的同时也带来一个非常重要的特性更新--那就是Linux容器.现在原生系统的Chrome OS用户们也能够使用到Linux的部分功能. ...

  5. Linux批量修改文件名

    文章目录 前言 一.操作命令 二.详解 1. # 号截取,删除左边字符,保留右边字符. 2. ## 号截取,删除左边字符,保留右边字符. 3. %号截取,删除右边字符,保留左边字符 4. %% 号截取 ...

  6. linux批量修改 文件名编码,linux下批量修改文件名

    linux下批量修改文件名 0.问题来源,想把一部分文件加上日期序.也就是在文件名称前加上当前的年月日进行输出. 获取日期格式如下 Zianed@ubuntu:~/public_web_sSmO9OU ...

  7. linux下批量修改文件名精彩解答案例分享

    ######################################################### #linux下批量修改文件名精彩解答案例分享 #date:21:34 2011-11 ...

  8. Linux下批量修改文件名

    ##################################### #Linux下批量修改文件名案例分享 #date:2019-05-09 #Discuz论坛:www.slinuxserver ...

  9. Linux下批量修改文件名(rename)

    1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了 比如把所有的表为cdb1_* 修改为cdb_*的 在本目录下 只需要# rena ...

最新文章

  1. spark—3(Spark Scheduler)
  2. SimpleDateFormat处理 dd-MMM-yy类型日期
  3. 皮一皮:自作多情的表率...
  4. LeetCode OJ 113. Path Sum II
  5. python之获取微信服务器的ip地址
  6. es6笔记 day3---Promise
  7. 确定计算机配置方案的原则,确定计算机配置方案的原则
  8. IDEA导入Git项目后右键项目找不到Git选项的解决方法
  9. 计算机网络习题集_主打选择填空
  10. java实现简单的文字pk的小游戏
  11. 腾讯云云硬盘快速入门-挂载云硬盘
  12. Rocketmq简介及部署、原理和使用介绍
  13. 维护采购订单审批的特性Characteristic和类Class
  14. 为什么微软推出“阉割版”onenote?一篇文章快速入门onenote uwp
  15. 关于人工智能与人脑思维的辩证思考
  16. 安卓老版本游戏/七八年前安卓游戏通过安卓虚拟机实现兼容
  17. 51单片机热敏打印自助排队叫号系统银行医院柜台DY-SV17F语音播报
  18. [附源码]SSM计算机毕业设计线上图书销售管理系统JAVA
  19. 关于微软Window10的one Note打印pdf失败
  20. Spring mail 邮件服务及其参数配置(properties文件的读写)

热门文章

  1. Unity3D技术之优化图形性能绘制调用批处理浅析
  2. centos 4.4配置使用
  3. Java基础-方法(method)的应用
  4. javascript 公历与农历相互转换工具类
  5. 管道符和作业控制 shell变量 环境变量配置文件
  6. 安卓登录以及会话保持的解决方案
  7. Activity间的转场动画(overridePendingTransition)
  8. [leetcode] Merge k Sorted Lists
  9. Android系统兼容性问题(持续更新)
  10. XP去除开机登陆画面