basename和dirname工具

basename截取文件路径中的文件名

1
2
[root@ggpscripts]#basename/root/scripts/birds/regular_express.txt
regular_express.txt

dirname截取文件路径中的文件路径

1
2
[root@ggpscripts]#dirname/root/scripts/birds/regular_express.txt
/root/scripts/birds

不使用外部工具进行字符截断

#去除从开头匹配成功的最短字符串

##去除从开头匹配成功的最长字符串

%去除从结尾匹配成功的最短字符串

%%去除从结尾匹配成功的最长字符串

*通配符

1
2
3
4
5
6
7
8
9
[root@ggpscripts]#string=www.baidu.com
[root@ggpscripts]#echo${string#*.}
baidu.com
[root@ggpscripts]#echo${string##*.}
com
[root@ggpscripts]#echo${string%.*}
www.baidu
[root@ggpscripts]#echo${string%%.*}
www

截取文件名:

1
2
3
[root@ggpscripts]#dir=/root/scripts/birds/regular_express.txt
[root@ggpscripts]#echo${dir##*/}
regular_express.txt

截取文件路径:

1
2
3
[root@ggpscripts]#dir=/root/scripts/birds/regular_express.txt
[root@ggpscripts]#echo${dir%/*}
/root/scripts/birds