linux命令之rename
1.rename介绍
linux命令rename是用来重命名文件名称。与mv不同的是,mv命令一次只能修改一个文件名,而rename命令能够对文件名进行批量修改
2.rename用法
rename [options] expression replace file...
|----|--------------|
| 参数 | 说明 |
| -v | 详细输出执行的操作 |
| -s | 在符号链接上执行 |
| -h | 显示帮助信息 |
| -V | 输出rename版本信息 |
[rename参数]
[root@rhel77 ~]# rename --help
Usage:
rename [options] expression replacement file...
Options:
-v, --verbose explain what is being done
-s, --symlink act on symlink target
-h, --help display this help and exit
-V, --version output version information and exit
For more details see rename(1).
[root@rhel77 ~]#
expression:当前文件名中要被修改的字符;
replacement:要被修改为的新字符;
file:要被执行的对象文件列表;
3.实例
3.1.将ztj目录下所有后缀为.txt的文件,替换为.log
命令:
rename .txt .log *.txt
#rename .txt(需要替换的后缀) .log(最终替换成的后缀) *.txt(当前所有的文件)
[root@rhel77 ztj]# ls
1.txt 2.txt 3.txt 4.txt 5.txt
[root@rhel77 ztj]# rename .txt .log *.txt
You have new mail in /var/spool/mail/root
[root@rhel77 ztj]# ls
1.log 2.log 3.log 4.log 5.log
[root@rhel77 ztj]#
3.2.将ztj目录下所有出现ztj的部分全都替换为ztj0
命令:
rename ztj ztj0 ztj?
[root@rhel77 ztj]# ls
ztj1 ztj2 ztj3 ztj4 ztj5
[root@rhel77 ztj]# rename ztj ztj0 ztj?
[root@rhel77 ztj]# ls
ztj01 ztj02 ztj03 ztj04 ztj05
[root@rhel77 ztj]#
3.3.将ztj目录下所有出现ztj0的部分全都替换为ztj00
命令:
rename ztj0 ztj00 ztj*
[root@rhel77 ztj]# ls
ztj01 ztj02 ztj03 ztj04 ztj05
[root@rhel77 ztj]# rename ztj0 ztj00 ztj*
[root@rhel77 ztj]# ls
ztj001 ztj002 ztj003 ztj004 ztj005
[root@rhel77 ztj]#