首先來說一下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集中的任意單個字元
當前1/2頁
12下一頁閱讀全文