Linux - 截取字符串的多种方法

简介: Linux - 截取字符串的多种方法

Linux 的字符串截取很有用,有八种方法。假设有变量 var=http://www.hao.com/123.htm

1、# 号截取,删除左边字符,保留右边字符

echo ${var#*//}

其中 var 是变量名,# 号是运算符*// 表示从左边开始删除第一个 // 号及左边的所有字符

即删除 http://

结果是:www.hao.com/123.htm

2、## 号截取,删除左边字符,保留右边字符。

echo ${var##*/}

##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符

即删除 http://www.hao.com/          

结果是:123.htm

3、%号截取,删除右边字符,保留左边字符

echo ${var%/*}

%/* 表示从右边开始,删除第一个 / 号及右边的字符

结果是:http://www.hao.com

4、%% 号截取,删除右边字符,保留左边字符

echo ${var%%/*}

%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符

结果是:http:

5、从左边第几个字符开始,及字符的个数

echo ${var:0:5}

其中的 0 表示左边第一个字符开始,5 表示字符的总个数。

结果是:http:

6、从左边第几个字符开始,一直到结束

echo ${var:7}

其中的 7 表示左边第8个字符开始,一直到结束。

结果是:www.hao.com/123.htm

7、从右边第几个字符开始,及字符的个数

echo ${var:0-7:3}

其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。

结果是:123

8、从右边第几个字符开始,一直到结束

echo ${var:0-7}

表示从右边第七个字符开始,一直到结束。

结果是:123.htm

注:(左边的第一个字符是用 0 表示,右边的第一个字符用 0-1 表示)

目录
相关文章
|
Web App开发 Shell Linux
linux中shell截取字符串方法总结
shell中截取字符串的方法有很多中,可以分为两大类。第一种获取特定的字符或字符串的左边或者右边的字字符串,java中实现需要先用indexOf来确定特定字符串的位置,然后再用substring来获取结果;第二种类似java中的substring     shell中截取字符串的方法有很多中, ${expression}一共有9种使用方法。
4825 0
|
7月前
|
Linux PHP 开发工具
Linux查找含有某字符串文件并批量替换
Linux查找含有某字符串文件并批量替换
|
Linux Perl
linux中计算文本文件中某个字符的出现次数
linux中计算文本文件中某个字符的出现次数
194 0
linux中计算文本文件中某个字符的出现次数
|
Linux
Linux - 截取字符串的多种方法
Linux - 截取字符串的多种方法
221 0
|
Linux
Linux:查找指定字符串,并将结果输出到指定文件
Linux:查找指定字符串,并将结果输出到指定文件
932 0
|
Linux Perl
Linux 空格转换行
tr ' ' '\n' sed 's/ /\n/g '
1012 4
|
存储 Linux Perl
Linux生成随机数字和字符串
生成随机数字 使用系统的$RANDOM变量 > echo $RANDOM 14587 使用date +%s%N > date +%s%N 1529584024896587259 使用/dev/random 或 /dev/urandom/dev/random存储着系统当前运行环境的实时数据,是阻塞的随机数发生器,读取有时需要等待,尽量避免使用。
1084 0
下一篇
DataWorks