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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。