Linux(Centos 7.6)命令详解:rename

1.命令作用

通常被用来重命名文件扩展名、删除文件前缀或后缀、替换特定字符等操作

两个版本:

  • C版本(默认版本)
  • Perl版本(需要另行安装,安装执行perl -MCPAN -e 'install File::Rename')

版本查看:执行man rename查看

  • C版本man rename 输出第一行提示:RENAME(1) User CommandsRENAME(1) 
  • Perl版本man rename 输出第一行提示:RENAME(1) User Contributed Perl Documentation RENAME(1)

功能说明:Rename命令的功能是用于批量修改文件名称

  • C语言是替换关键字来批量重命名文件名
  • Perl可基于正则表达式来批量重命名文件名

2.命令语法

C版本:

Usage: rename [options] expression replacement file...

Usage: rename [选项] <表达式> <替换> <文件>

Perl版本:

rename [选项] <perl表达式> <文件>

3.参数详解

C版本:

options:

  • -v, --verbose,说明正在做的操作
  • -s, --symlink,操作符号链接文件

4.常用用例

4.1.C版本批量修改文件后缀

生成5个以csv为后缀的文件,使用rename将5个文件后缀.csv批量修改为.txt

[root@localhost test]# touch file{1..5}.csv
[root@localhost test]# ll
total 0
-rw-r--r--. 1 root root 0 Jan 12 03:18 file1.csv
-rw-r--r--. 1 root root 0 Jan 12 03:18 file2.csv
-rw-r--r--. 1 root root 0 Jan 12 03:18 file3.csv
-rw-r--r--. 1 root root 0 Jan 12 03:18 file4.csv
-rw-r--r--. 1 root root 0 Jan 12 03:18 file5.csv
[root@localhost test]# rename .csv .txt *.csv
[root@localhost test]# ll
total 0
-rw-r--r--. 1 root root 0 Jan 12 03:18 file1.txt
-rw-r--r--. 1 root root 0 Jan 12 03:18 file2.txt
-rw-r--r--. 1 root root 0 Jan 12 03:18 file3.txt
-rw-r--r--. 1 root root 0 Jan 12 03:18 file4.txt
-rw-r--r--. 1 root root 0 Jan 12 03:18 file5.txt
[root@localhost test]# 

4.2.Perl版本常用用法

rename 's/\.txt$//' *          # 删除后缀
rename 's/$/\.zip/' *          # 添加后缀
rename 's/\.zip$/.txt/' *      # 修改后缀
rename 's/^test/good/' *       # 修改前缀
rename 's/^test//' *           # 删除前缀
rename 's/^/good/' *           # 添加前缀
rename 's/\.txt$/\.bak.txt/' * # 后缀前添加备份标志
rename 's/\.txt/.csv/;s/^/aaaa/' *1.txt         # 组合使用方法1
rename -E 's/\.txt/.csv/' -E 's/^/aaaa/' *1.txt # 组合使用方法2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值