Linux 下rename 命令的用法第1/2页

 更新时间:2008年04月04日 20:46:21   作者:  
刚学习linux的时候,对文件重命名首先想到的就是rename命令,但是按照在windows下对文件重命名的方式试了N多次都没有反应,在网上一搜索,发现很多人都对rename命令知之甚少,甚至有一部分人说linux下没有rename命令,建议大家用mv命令。鉴于此,于是man rename一下,好好的研究了一下它的用法 ,在此对rename命令和mv命令在重命名文件方面做一个比较,有不足之处,希望各位博友指正!
 首先来说一下mv命令,在man mv中我们可以看到对于mv命令的介绍是这样的:

mv -move(rename) files

可以看到mv命令确实有重命名的功能,但是实际应用中,它只能对单个文件重命名,命令如下:

mv [path/]oldfilename [path/]newfilename

“mv命令只能对单个文件重命名”,这实就是mv命令和rename命令的在重命名方面的根本区别。

再来说rename命令,在man rename的说明如下:

NAME

rename -Rename files

SYNOPSIS

rename from to file....

DESCRIPTION

rename will rename the specified files by replacing the first occurrence of from in their name by to.

For example, given the files foo1, ..., foo9, foo10, ..., foo278, the commands

rename foo foo0 foo?

rename foo foo0 foo??

will turn them into foo001, ..., foo009, foo010, ..., foo278.

And

rename .htm .html *.htm

will fix the extension of your html files.

可以看出rename命令是专用于文件重命名的,而且根据其后的例子可以看出,rename除了给单个文件重命名,还可以批量文件重命名。同时,值得注意一点的是,rename命令是带3个参数而不是很多人认为的2个参数。

上面的例子中给出了两种文件批量重命名的用法,而实际上,rename结合通配符使用,它的功能比上面的例子所显示的更强大。基本的通配符有以下几个:

?    可替代单个字符

*    可替代多个字符

[charset]    可替代charset集中的任意单个字符

相关文章

最新评论