字符串截取转自原文地址:http://www.jb51.net/article/56563.htm
一:字符串截取
有var变量:
var=http://www.aaa.com/123.htm
1. # 号截取,删除左边字符,保留右边字符。
echo ${var#*//}
www.aaa.com/123.htm
2. ## 号截取,删除左边字符,保留右边字符。
echo ${var##*/} 123.htm
3. %号截取,删除右边字符,保留左边字符
echo ${var%/*} http://www.aaa.com
4. %% 号截取,删除右边字符,保留左边字符
echo ${var%%/*} http:
5. 从左边第几个字符开始,及字符的个数
echo ${var:0:5} #其中的 0 表示左边第一个字符开始,5 表示字符的总个数。
http:
6. 从左边第几个字符开始,一直到结束
echo ${var:7} #其中的 7 表示左边第8个字符开始,一直到结束。 www.aaa.com/123.htm
7. 从右边第几个字符开始,及字符的个数
echo ${var:0-7:3} #其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。 123
8. 从右边第几个字符开始,一直到结束。
echo ${var:0-7} #表示从右边第七个字符开始,一直到结束。 123.htm
判断字符串包含关系转自:http://www.cnblogs.com/ginsonwang/p/5525340.html
二:判断字符串包含
1
strA="long string" strB="string" result=$(echo $strA | grep "${strB}") if [[ "$result" != "" ]] then echo "包含" else echo "不包含" fi
2
strA="helloworld" strB="low" if [[ $strA =~ $strB ]] then echo "包含" else echo "不包含" fi
3
A="helloworld" B="low" if [[ $A == *$B* ]] then echo "包含" else echo "不包含" fi
4
thisString="1 2 3 4 5" # 源字符串 searchString="1 2" # 搜索字符串 case $thisString in *"$searchString"*) echo Enemy Spot ;; *) echo nope ;; esa
5
STRING_A=$1 STRING_B=$2 if [[ ${STRING_A/${STRING_B}//} == $STRING_A ]] then ## is not substring. echo N return 0 else ## is substring. echo Y return 1 fi
ln
ln -s src des
unzip解压乱码
unzip -O CP936 xxx.zip (用GBK, GB18030也可以)
vim文件忘记加sudo
:w !sudo tee %
tar
tar zxvf <tar包> -C <dir> 解压到制定目录