使用#%截取字符串
記住# $ % 這3個字符在鍵盤上的位置
# 在 $ 的左邊,從左邊開始數(shù)
% 在 $的右邊,從右邊開始數(shù)
${varible##*string} #從左向右截取最后一個string后的字符串
${varible#*string} #從左向右截取第一個string后的字符串
${varible%%string*} #從右向左截取最后一個string后的字符串
${varible%string*} #從右向左截取第一個string后的字符串
“*”只是一個通配符可以不要
# 例子:
MYVAR="food|forthought.jpg"
echo ${MYVAR##*fo} # rthought.jpg
echo ${MYVAR#*fo} # od|forthought.jpg
echo ${MYVAR%%fo*} #
echo ${MYVAR%fo*} #food|
使用位置與長度截取${str:index:length}
${varible:n1:n2}: 從左邊數(shù)截取變量varible從n1到n2之間的字符串。
${varible:0-n1:n2}:從右邊數(shù)截取變量varible從n1到n2之間的字符串。
MYVAR="food|forthought.jpg"
echo ${MYVAR:0:3} #foo
echo ${MYVAR:3} #d|forthought.jpg
echo ${MYVAR:0-3:2} #jp
echo ${MYVAR:0-3} #jpg
字符串替換${str/oldChar/newChar}
str=/home/log/logs/err.log.2017-12-05
echo ${str/log/xxx} #:將第一個log替換為xxx
#/home/log/logs/err.log.2017-12-05
echo ${str//log/xxx} #: 將全部log替換為xxx
#/home/admin/xxxs/err.xxx.2017-12-05