|

|
题目是Shell编程高级用法,这应该是不对的!但是又想不到用什么名字就用他了!
有人在群里问道一个shell编程方面的问题!关于# %的用法问题!今天就在这里说下吧!有些用到的也不是很多!自己之前在写一个脚本的时候用到过!
主要是就是#和%和:的一些特殊用法:
# 用在变量名前面可以达到统计字符个数的功能
tom@sexly:~$ a="www.google.com"
tom@sexly:~$ echo ${#a}
14
# 用在变量之后的时候可以达到截取字符的功能(只匹配一次)
tom@sexly:~$ a="www.google.com"
tom@sexly:~$ echo ${a#*\.} 这里截取.(第一个点)后面的所有内容
google.com
## 和单个#功能基本相同,但是他会匹配到最后
tom@sexly:~$ a="www.google.com"
tom@sexly:~$ echo ${a##*\.} 这里截取了最后一个点的内容
com
% 和%% 他们功能与#和##基本相同 最不过他们是截取的内容是相反的
tom@sexly:~$ a="www.google.com"
tom@sexly:~$ echo ${a%\.*}
www.google
tom@sexly:~$ a="www.google.com"
tom@sexly:~$ echo ${a%%\.*}
www
:(冒号) 其功能也是截取字符串
格式为 :起始[:长度] 省略长度,系统默认截取到最后,起始从0开始
tom@sexly:~$ echo ${a:4}
google.com
tom@sexly:~$ echo ${a:4:6}
google |
|