假设有一个字符串:http://write.blog.youkuaiyun.com/mdeditor
1.删除从左开始第一个匹配字符串及其左边的所有字符串
${str#*regx}
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str#//}
2.删除从左开始最后一个匹配字符串及其左边的所有字符串
${str##*regx}
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str##*/}
3.删除从右开始第一个匹配字符串及其右边的所有字符串
${str%regx*}
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str%/*}
4.删除从右开始最后一个匹配字符串及其右边的所有字符串
${str%%regx*}
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str%%/*}
5.从左边第几个字符开始,及字符的个数
${str:0:7}
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str:0:7}
其中的 0 表示左边第一个字符开始,7表示7个字符
6.从左边第几个字符开始,一直到结束。
${str:7}
7 表示左边第8个字符开始,一直到结束。
str="http://write.blog.youkuaiyun.com/mdeditor"
echo ${str:7}
7.从右边第几个字符开始,及字符的个数。
${str:0-8:8}
0-8表示右边算起第八个字符开始,8表示字符的个数。
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str:0-8:8}
8.从右边第几个字符开始,一直到结束。
${str:0-12}
表示从右边第十二个字符开始,一直到结束。
str=http://write.blog.youkuaiyun.com/mdeditor
echo ${str:0-12}
注:左边的第一个字符是用 :0 表示,右边的第一个字符用 :0-1 表示
9.用cut工具截取
cut可以将一段新的某一段“切”出来,处理的信息是以“行”为单位。
-d 后面接分割字符,与-f一起使用
-f 依据-d的分割字符将一段信息切割成为数段,用-f取出几段的意思
-c 以字符的单位取出固定字符区间
cut的主要用途以及不足
cut主要的用途在于将同一行里面的数据进行分解,最常使用在分析一些数据或文字数据的时候。这是因为有时候我们会以某些字符当作切割的函数,然后来将数据加以切割,以取得我们所需要的数据。
如果文件里面的某些域是由若干个空格来间隔的,那么用cut就有点麻烦了,因为cut只擅长处理“以一个字符间隔”的文本内容。
本文介绍Shell中常用的字符串操作方法,包括删除指定位置的字符串、截取特定部分等实用技巧,并解释了这些操作的实际应用场景。
878

被折叠的 条评论
为什么被折叠?



