shell 获取字符串长度
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 获取字符串长度相关的知识,希望对你有一定的参考价值。
1、利用$#str
str="hello world";echo $#str
2、利用awk的length方法
str="hello world";echo $str|awk print length($0)
也可以用awk print length($0)统计文件中每行的长度:
awk print length($0) /etc/passwd
3、利用awk的NF项
str="hello world";echo $str|awk -F "" print NF
4、利用wc的-L参数
str="hello world";echo $str|wc -L
备注: -L参数
1) 对多行文件来说,表示打印最长行的长度! 82,表示/etc/passwd文件最长行的长度为82
2) 对单行字符串而言,表示当前行字符串的长度!
5、利用wc的-c参数,结合echo -n参数
str="hello world";echo -n $str|wc -c ==>11
str="hello world";echo $str|wc -c ==>12
备注:
1) -c参数: 统计字符的个数
2) -n参数: 去除"\\n"换行符,不去除的话,默认带换行符,字符个数就成了7
6、利用expr的length方法
str="helloworld";expr length $str
#这种方法,str中不能带有空格,不然就就会报错
7、利用expr的$str : ".*"技巧
str="helloworld";expr $str : ".*"
#这种方法,str中不能带有空格,不然就就会报错
以上是关于shell 获取字符串长度的主要内容,如果未能解决你的问题,请参考以下文章