sh字符串截取
sh字符串截取
*的位置,代表删除侧边
#号截取,*删除从左边满足条件的第一组字符及其左边字符,保留右边字符。1
2
3var=http://www.aaa.com/123.htm.
echo ${var#*//} # www.aaa.com/123.htm.
echo ${var#*/} # /www.aaa.com/123.htm.
-
##号截取,*删除从右边满足条件的第一组字符及其左边字符,保留右边字符1
2
3var=http://www.aaa.com/123.htm.
echo ${var##*//} # www.aaa.com/123.htm.
echo ${var##*/} # 123.htm. -
%号截取,*删除从左边满足条件的第一组字符及其左边字符,保留左边字符1
2
3var=http://www.aaa.com/123.htm.
echo ${var%//*} # http:
echo ${var%/*} # http://www.aaa.com -
%%号截取,*删除从右边满足条件的第一组字符及其左边字符,保留左边字符1
2
3var=http://www.aaa.com/123.htm.
echo ${var%%//*} # http:
echo ${var%%/*} # http: -
下标截取(开始位置+长度)(负数下标表示从右边数)
1
2
3var=http://www.aaa.com/123.htm.
echo ${var:0:5} # http:
echo ${var:0:-1} # http://www.aaa.com/123.htm. -
缺省下标(个数)截取
1
2var=http://www.aaa.com/123.htm.
echo ${var:5} # www.aaa.com/123.htm.