Linux shell 获取变量部分路径、文件名、文件后缀

以 make 文件为例:

file=/usr/bin/make

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@CentOs7]# echo ${file%*/}
/usr/bin/make
 
[root@CentOs7]# echo ${file%%*/}
/usr/bin/make
 
[root@CentOs7]# echo ${file%%/*}
 
[root@CentOs7]# echo ${file%/*}
/usr/bin
 
[root@CentOs7]# echo ${file#/*}
usr/bin/make
 
[root@CentOs7]# echo ${file##/*}
 
 
[root@CentOs7]# echo ${file##*/}
make
 
[root@CentOs7]# echo ${file#*/}
usr/bin/make

  

file=/usr/share/man/man1/make.1.gz

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@CentOs7]# echo ${file%*/}
/usr/share/man/man1/make.1.gz
 
[root@CentOs7]# echo ${file%%*/}
/usr/share/man/man1/make.1.gz
 
[root@CentOs7]# echo ${file%%/*}
 
[root@CentOs7]# echo ${file%/*}
/usr/share/man/man1
 
[root@CentOs7]# echo ${file#/*}
usr/share/man/man1/make.1.gz
 
[root@CentOs7]# echo ${file##/*}
 
[root@CentOs7]# echo ${file##*/}
make.1.gz
 
[root@CentOs7]# echo ${file#*/}
usr/share/man/man1/make.1.gz

  

posted @   悟透  阅读(624)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
历史上的今天:
2022-02-24 Linux和Aix系统shell获取IP地址
2022-02-24 台湾宜扬CFEON-EN25F80-100HCP参数说明
点击右上角即可分享
微信分享提示