linux 怎么截取字符串,Linux中截取字符串
第一种
${parameter%word} #最小限度从后面截掉word
${parameter%%word} #最大限度从后面截掉word
${parameter#word} #最小限度从前面截掉word
${parameter##word} #最大限度从前面截掉word
word可以是一个具体的字符串,也可以是一个模式字符串。
例子:
str=http://www.你的域名.com/cut-string.html
echo ${str%/*}
#结果
http://www.你的域名.com
echo ${str%%/*}
#结果
http:
echo ${str#*//}
#结果
www.你的域名.com/cut-string.html
echo ${str##*/}
#结果
cut-string.html
第二种:
${variable:n1:n2} #截取变量variable从左边起索引n1开始的n2个字符。n1表示索引,索引从0开始;n2表示截取的字符个数。
变种如下:
#截取变量variable从左边起索引n1开始的所有字符。
${variable:n1}
#截取变量variable从右边起第n1个字符开始的n2个字符。
${variable:0-n1:n2}
#截取变量variable从右边起第n1个字符开始的所有字符。
${variable:0-n1:n2}
例子:
variable=http://www.你的域名.com/cut-string.html
echo ${variable:0:4}
#结果
http
echo ${variable:7}
#结果
www.你的域名.com/cut-string.html
echo ${variable:0-15:10}
#结果
cut-string
echo ${variable:0-15}
#结果
cut-string.html
第三种:
借助其他shell命令,如cut
cut命令的选项主要有以下几个,索引从1开始:
echo $variable | cut -c 1-4
#结果
http
echo $variable | cut -c 8-
#结果
www.你的域名.com/cut-string.html
echo $variable | cut -d":" -f1
#结果
http
第一种 ${parameter%word} #最小限度从后面截掉word ${parameter%%word} #最大限度从后面截掉word ${parameter#word} #最小限度从前面截掉word ${parameter##word} #最大限度从前面截掉word word可以是一个具体的字符串,也可以是一个模式字符串。 例子: str=http://www.你的域名.com/cut-string.html echo ${str%/*} #结果 http://www.你的域名.com echo ${str%%/*} #结果 http: echo ${str#*//} #结果 www.你的域名.com/cut-string.html echo ${str##*/} #结果 cut-string.html 第二种: ${variable:n1:n2} #截取变量variable从左边起索引n1开始的n2个字符。n1表示索引,索引从0开始;n2表示截取的字符个数。 变种如下: #截取变量variable从左边起索引n1开始的所有字符。 ${variable:n1} #截取变量variable从右边起第n1个字符开始的n2个字符。 ${variable:0-n1:n2} #截取变量variable从右边起第n1个字符开始的所有字符。 ${variable:0-n1:n2} 例子: variable=http://www.你的域名.com/cut-string.html echo ${variable:0:4} #结果 http echo ${variable:7} #结果 www.你的域名.com/cut-string.html echo ${variable:0-15:10} #结果 cut-string echo ${variable:0-15} #结果 cut-string.html 第三种: 借助其他shell命令,如cut cut命令的选项主要有以下几个,索引从1开始: echo $variable | cut -c 1-4 #结果 http echo $variable | cut -c 8- #结果 www.你的域名.com/cut-string.html echo $variable | cut -d":" -f1 #结果 http