假設變量 var=“https://www.163.com/index.html”
一、'#' 截取,保留右邊字符,刪除左邊字符
1 echo ${var#*//}
var : 變量名;
# : 運算符,匹配左邊第一個匹配的字符或字符串;
#*// : ‘*’ 在左邊表示從左邊開始刪除第一個 ‘//’ 及左邊所有的字符,* 在右側是無效的;
顯示結果:www.163.com/index.html
二、‘##’ 截取, 保留右邊字符,刪除左邊字符
1 echo ${var##*/}
## : 運算符, 匹配到左邊最后一個(右邊第一個)匹配的字符或字符串;
##*/: 從左邊開始刪除最后邊的‘/'及左邊所有的字符;
顯示結果:index.html
三、'%'截取, 保留左邊字符,刪除右邊字符
1 echo ${var%/*}
% : 運算符, 匹配右邊第一個匹配的字符或字符串;
%/* : 刪除右邊第一個’/‘ 及右邊所有字符;
顯示結果: https://www.163.com
四、'%%'截取, 保留左邊字符,刪除右邊字符
echo ${var%%/*}
% : 運算符, 匹配右邊最后一個(左邊第一個)匹配的字符或字符串;
%%/* : 刪除右邊最后一個’/‘ 及右邊所有字符;
顯示結果: https:
五、':' 截取
# 從開頭第9個字符開始到結尾,結果:www.163.com/index.html echo ${var:8} # 從開頭匹配取5個字符,結果: https echo ${var:0:5} # 從右邊第4個字符開始到結尾, 結果: html echo ${var:0-4} # 從右邊第10個字符開始取5個字符, 結果: index echo ${var:0-10:5}