L11.linux命令每日一练 -- 第二章 文件和目录操作命令 -- rename和basename命令

2.15 rename:重命名文件

2.15.1 命令详解

【命令星级】 ★★★☆☆

【功能说明】

​ rename命令通过字符串替换的方式批量修改文件名。

【语法格式】

rename from to file

​ 其中的from、to、file是三个选项。

  • from:代表需要替换或者需要处理的字符(一般是文件名的一部分,也包括扩展名)。
  • to:把前面的from代表的内容替换为to代表的内容。
  • file:待处理的文件,可以用"*"通配所有的文件。

2.15.2 使用范例

​ **范例2-80:**批量修改文件名案例。

[root@centos7 ~]# touch stu_102999_{1..5}_finished.jpg
[root@centos7 ~]# ll -h
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_1_finished.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_2_finished.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_3_finished.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_4_finished.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_5_finished.jpg
[root@centos7 ~]# rename "_finished" "" *	#将所有文件的_finished替换为空。
[root@centos7 ~]# ll 
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_1.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_2.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_3.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_4.jpg
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_5.jpg

​ **范例2-81:**批量修改扩展名案例。

[root@centos7 ~]# rename .jpg .txt *.jpg	#将所有文件的.jpg替换为.txt。
[root@centos7 ~]# ll
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_1.txt
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_2.txt
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_3.txt
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_4.txt
-rw-r--r--. 1 root root    0 Oct 21 17:34 stu_102999_5.txt

2.16 basename:显示文件名或目录名

2.16.1 命令详解

【命令星级】 ★★★☆☆

【功能说明】

​ basename命令用于显示去除路径和文件后缀部分的文件名或目录名。

【语法格式】

basename [name] [suffix]
basename [<文件或目录>] [后缀]

说明:

​ 1)注意basename命令以及后面的选项和文件,每个元素之间都至少要有一个空格。

​ 2)suffix是和旋参数,指定要去除的文件后缀字符串。

2.16.2 使用范例

​ **范例2-82:**显示文件或目录名。

[root@centos7 ~]# mkdir -p /data/dir1	#测试数据。
[root@centos7 ~]# touch /data/dir1/file1.txt	#测试数据。
[root@centos7 ~]# basename /data/dir1/file1.txt 	#去除路径部分,即只显示文件名。
file1.txt
[root@centos7 ~]# basename /data/dir1/file1.txt .txt	#去除路径部分(/data/dir1/)和文件后缀(.txt)
file1

猜你喜欢

转载自blog.csdn.net/qq_25599925/article/details/125351454