标签:
首先我们设定一个变量 variable=http://www.hao.123.com:80
[root@server7 mnt]# echo ${variable} http://www.hao.123.com:80
现在我们直接对其作出调整,得到我们想要的部分。
具体应用自己想,不要太方便。。。。。。。。
比如我们还不知道这个地址变量是http或者https我们就要确认,:后的,而其他部分输入冗余我们就去了他们。
[root@server7 mnt]# echo ${variable%%:*} http
解释:%% :* 从后往前裁剪直到遇到的最后一个冒号
为什么是最后一个呢我们注意到80端口前还有个冒号如果我们要得到端口前的:的前部分我们使用如下
[root@server7 mnt]# echo ${variable%:*} http://www.hao.123.com
少打一个"%"即可意思是从后往前裁剪直到遇到的第一个冒号
现在我们只想保留www.hao123.com 字段
操作如下
先去掉http://
[root@server7 mnt]# echo ${variable#*//} www.hao.123.com:80
从前向后裁剪到第一个 //
(此时我们应该注意到区别从前往后裁剪的时候*号的位置在目的字符之前 而我们使用%从后往前裁剪的时候是在目的字符后面的)
我们让domainp=`echo ${variable#*//}`
[root@server7 mnt]# echo $domainp www.hao.123.com:80
下来再把端口去掉,很简单 从后往前裁到第一个或者最后一个冒号,都一样, 因为只有一个。
[root@server7 mnt]# echo ${domainp%:*} [root@server7 mnt]# echo ${domainp%%:*} www.hao.123.com
很容易把这些变量字符串裁剪的方法get了么
就是不太容易记 ,所以实践吧。
标签:
原文地址:http://my.oschina.net/loveleaf/blog/489339