欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

linux 字符串string操作(截取、提取、长度计算等)

发布时间:2025/3/21 linux 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 linux 字符串string操作(截取、提取、长度计算等) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1、按照指定字符提取

${varible##*string} 从左向右截取最后一个string后的字符串
${varible#*string}从左向右截取第一个string后的字符串
${varible%%string*}从右向左截取最后一个string后的字符串
${varible%string*}从右向左截取第一个string后的字符串
ex:

str="abcdefghd123" echo ${str##*d} 123echo ${str#*d} efghd123echo ${str%%d*} abcecho ${str%d*} abcdefgh

延申:

1) 做字符串删除

${变量名#substring正则表达式}从字符串开头开始配备substring,删除匹配上的表达式。

${变量名%substring正则表达式}从字符串结尾开始配备substring,删除匹配上的表达式。

注意:${str##*/}, ${str%/*} 分别是得到文件名,或者目录地址最简单方法。

str="/home/domi/study"echo ${str} /home/domi/studyecho ${str#/} home/domi/studyecho ${str#*/} home/domi/studyecho ${str##*/} study

2) 字符串替换

${变量/查找/替换值} 一个“/”表示替换第一个,”//”表示替换所有,当查找中出现了”/”请加转义符”\/”表示。

echo ${str/\//\\} \home/domi/studyecho ${str//\//\\} \home\domi\study

 

2、提取指定位置、长度的字符串

${varible:n1:n2}:截取变量varible从n1开始,长度为n2的字符串。

echo ${str:2:2} cdecho ${str:2:1} cecho ${str:0:1} aecho ${str:0:2} ab

${varible:n1-n3:n2}:截取变量varible从后到前计算(n1-n3)位置开始,长度为n2的字符串。

echo ${str:1-2:2} 3echo ${str:1-3:2} 23echo ${str:1-3:1} 2

 

3、提取指定格式的字符串

比如获取后缀名
ls -l | cut -d “.” -f2

注释:ls -l显示所有的文件信息,cut按照(.)来切割,并提取第二列数据。

 

4、字符串长度

echo ${#str} 

 

 

 

 

 

 

总结

以上是生活随笔为你收集整理的linux 字符串string操作(截取、提取、长度计算等)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。