Linux常用基本命令(rename,basename,dirname)

时间:2022-03-16 09:28:47

rename:重命名文件,

我下面的操作是在ubuntu16.04发行版 演示的,centos下面的语法有些不同

1,首先,生成1到100命名的.html后缀的文件

ghostwu@dev:~/linux/rename$ ls
ghostwu@dev:~/linux/rename$ touch {..}.html
ghostwu@dev:~/linux/rename$ ls
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html

2,通过rename+正则表达式,把.html后缀去掉

ghostwu@dev:~/linux/rename$ rename 's/\.html//' *.html
ghostwu@dev:~/linux/rename$ ls

s:表示替换,  //两个斜杠中没有内容,表示.html 替换为空

3,在文件末尾添加.html后缀

ghostwu@dev:~/linux/rename$ ls

ghostwu@dev:~/linux/rename$ rename 's/$/\.html/' *
ghostwu@dev:~/linux/rename$ ls
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html
.html .html .html .html .html .html .html

4,把.html后缀替换为.htm

ghostwu@dev:~/linux/rename$ rename 's/\.html/\.htm/' *
ghostwu@dev:~/linux/rename$ ls
.htm .htm .htm .htm .htm .htm .htm .htm .htm .htm
...

5,basename,返回路径中的文件名部分

ghostwu@dev:~$ basename ./linux/rename/.htm
.htm

6,basename, 返回路径中的文件名,不包括后缀

ghostwu@dev:~$ basename ./linux/rename/.htm .htm

7,dirname,返回文件的路径部分

ghostwu@dev:~$ dirname ./linux/rename/.htm
./linux/rename