Linux rename命令

转载:http://blog.csdn.net/sea_shore/article/details/6102437

1.rename命令批量修改文件名, 其实linux下可以使用别的办法来批量修改文件名, 不过rename实在太方便了

比如把所有的表为cdb1_* 修改为cdb_*的
在本目录下
只需要# rename ‘cdb1‘ ‘cdb‘ *

以前都是写个for循环来做...想想多傻啊, 呵呵

rename还有更多的功能, 建议man rename下

From:http://www.hao32.com/unix-linux/42.html

2.批量更改文件名 rename

通过 man rename 命令可以得知,rename 命令其实是一个 Perl 脚本命令,
它专用于批量地给多文件重命名(rename multiple files)。

命令格式: 
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ] 
perlexpr 是一种 Perl 脚本格式的正则表达式。
参数:
-v, --verbose 
Verbose: print names of files successfully renamed.
详细模式:打印成功更改的文件名列表
-n, --no-act 
No Action: show what files would have been renamed.
测试模式:并不真正的执行命令,而只是显示哪些文件名应该怎么进行
更改,用于测试模式。
-f, --force 
Force: overwrite existing files.
强制模式:在更改文件名,如果更改后的文件已经存在时覆盖已经存在
的文件。

rename 的典型应用:

0. 批量更改文件扩展名 
$ ls 
1.txt 2.txt 3.txt 4.txt 
$ rename ‘s//.txt//.ext/‘ * 
$ ls 
1.ext 2.ext 3.ext 4.ext 
1. 批量删除文件扩展名 
$ ls 
1.txt 2.txt 3.txt 4.txt 
$ rename ‘s//.txt//‘ * 
$ ls 
1 2 3 4 
2. 批量添加文件扩展名 
   $ ls 
1 2 3 4 
$ rename ‘s/$//.txt/‘ * 
$ ls 
1.txt 2.txt 3.txt 4.txt 
3. 按自己的方式批量重命名文件 
$ ls 
1.ext 2.ext 3.ext 4.ext 
$ rename ‘s/(/d)/第$1 章/‘ * 
$ ls 
第 1 章.ext 第 2 章.ext 第 3 章.ext 第 4 章.ext

3.

方法1:把文件名拆分处理,可以任意修改文件名

find -name ‘*.log‘ -printf %f//n|awk -F‘.‘ ‘{print $1}‘|xargs -i{} mv {}.log xiyun_{}.log

方法2:利用rename

一般的linux下的rename命令比较简单

rename ‘test‘ ‘xiyun‘ ‘*.log‘

把文件名中的某部分字符串替换掉

ubuntu下的rename命令支持正则表达式,因此功能更强大。

方法3:直接利用find和xargs和mv,中间不用awk,这样只能添加后缀名,不能修改文件名。

时间: 2024-10-12 09:03:15

Linux rename命令的相关文章

Linux rename命令文件重命名的用法汇总

Linux命令中的rename命令主要用于给文件重命名,与mv命令有些类似,但rename可以对批量文件进行重命名,而mv命令则只能对单个文件重命名,下面就给大家详细介绍下Linux rename命令的使用方法吧. Linux的 rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,早期的Linux发行版基本上使用的是C语言版本的,现在已经很难见到C语言版本的了,由于历史原因,在Perl语言大红大紫的时候,Linux的工具开发者们信仰Perl能取代C,所以大部分工具原来是C

Linux中rename命令用法学习 修改文件名

如何用命令修改文件名呢?在linux下可以用rename命令,当然还可以使用mv命令,这里分享下linux rename命令的用法. 有一部分人说linux下没有rename命令,建议大家用mv命令.对rename命令和mv命令在重命名文件方面做一个比较,大家根据个人喜欢选择使用吧. mv命令,在man mv中对于mv命令的介绍:mv -move(rename) files 可以看到mv命令确实有重命名的功能,但是实际应用中,它只能对单个文件重命名,命令如下:mv [path/]oldfilen

Linux下重命名文件或文件夹(mv命令与rename命令)

在Linux下重命名文件或目录,可以使用mv命令或rename命令 mv ------------ mv命令既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c mv /a /b/c 其实在文本模式中要重命名文件或目录,只需要使用mv命令就可以了,比如说要将一个名为abc的文件重命名为1234: mv abc 1234 注意,如果当前目录下也有个1234的文件的话,这个文件是会将它覆盖的. rename -----------

Linux下的rename命令

Dos/Windows下,对文件改名用rename.而书上说,Linux下对文件或目录改名该用mv.我一直也是这样做的,却忽略了Linux下也有个叫rename的命令.都是rename,但功能上就有点差异了.Linux下的rename更像批量改名的工具,是util-linux套件中提供的. 一.基本功能从mv和rename命令的man文档中,可以看到如下信息: 引用 mv - move (rename) filesrename - Rename files 也就是说,mv也能用于改名,但不能实现

[Linux] Linux中重命名文件和文件夹的方法(mv命令和rename命令)

原文链接 在Linux下重命名文件或目录,可以使用mv命令或rename命令,这里分享下二者的使用方法. mv命令既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c mv /a /b/c 其实在文本模式中要重命名文件或目录,只需要使用mv命令就可以了,比如说要将一个名为abc的文件重命名为1234: mv abc 1234 注意,如果当前目录下也有个1234的文件的话,这个文件是会将它覆盖的. 下面介绍Linux系统中另一个

原 Linux下的rename命令

原贴:http://www.linuxfly.org/post/300/ 5 [原]Linux下的rename命令 linuxing , 16:28 , 网络服务 ? 虚拟机 , 评论(0) , 引用(0) , 阅读(61) , Via 本站原创 大 | 中 | 小 引用地址: 注意: 该地址仅在今日23:59:59之前有效 Dos/Windows下,对文件改名用rename.而书上说,Linux下对文件或目录改名该用mv.我一直也是这样做的,却忽略了Linux下也有个叫rename的命令.都是

linux常用命令总结与解析

命令总结 mkdir -p(递归创建目录)创建目录的命令 mkdir directorys ls -l(long)-d(directory)显示目录或者文件 全称list(一.开头的文件在linux中属于隐藏文件)用-a可以查看这类文件 cd 切换目录层次change directory cd ~表示切换到家目录 cd -切换到上一次的的位置的目录 pwd 查看当前目录的 echo打印输出内容 (printf复杂的输出) printf -format and print data vi / vi

Linux基础命令(5)

二十四 date 命令简介在linux环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的运算,熟练运用date命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便.1.命令格式:  date [参数]... [+格式]2.命令功能:date 可以用来显示或设定系统的日期与时间.3.命令参数:3.1必要参数:%H 小时(以00-23来表示). %I 小时(以01-12来表示). %K 小时(以0-23来表示). %l 小时(以0-12来表示). %M 分钟(以00-59

爹地,我找到了!,15个极好的Linux find命令示例

爹地,我找到了!, 15个极好的Linux find命令示例 英文原文:Daddy, I found it!, 15 Awesome Linux Find Command Examples 标签: Linux 523人收藏此文章, 我要收藏66号公路 推荐于 3年前 (共 9 段, 翻译完成于 09-27) (20评) 参与翻译(3人): 一刀, 和雨冰风, hylent 仅中文 | 中英文对照 | 仅英文 | 打印此文章 前阵子,我们审查了15件实事 find命令的例子(第一部分).查找命令可