Linux--shell中获取字符串长度的常用方法

求字符串长度的操作在shell脚本中很常用,下面归纳、汇总了求字符串的几种常用方法:

【方法一】:利用{#str}来获取字符串长度

root@ubuntu:/home/fl# str="ABCDEF"
root@ubuntu:/home/fl# echo ${#str}
6

【方法二】:利用awk的length方法

root@ubuntu:/home/fl# str="ABCDEF"
root@ubuntu:/home/fl# echo ${str} | awk '{print length}'
6

【方法三】:利用awk的NF项来获取字符串长度

root@ubuntu:/home/fl# str="ABCDEF"
root@ubuntu:/home/fl# echo ${str} | awk -F "" '{print NF}'
6

备注:-F为分隔符,NF为域的个数,即单行字符串的长度

【方法四】:利用wc的-L参数来获取字符串的长度

root@ubuntu:/home/fl# str="ABCDEF"
root@ubuntu:/home/fl# echo ${str} | wc -L
6
root@ubuntu:/home/fl# cat /etc/passwd | wc -L
85

备注:
1)如果输入为单行字符串,输出为字符串的长度
2)如果输入为文件,则输出为文件中最长行的长度

【方法五】:利用wc的-c参数

root@ubuntu:/home/fl# echo -n "ABCDEF" | wc -c
6
root@ubuntu:/home/fl# echo "ABCDEF" | wc -c
7

备注:
-c参数:统计字符的个数
-n参数:去除字符串中的换行符

【方法六】:利用expr的length方法

root@ubuntu:/home/fl# str="ABCDEF"
root@ubuntu:/home/fl# expr length ${str}
6

注:文章主要内容来自https://blog.csdn.net/jerry_1126/article/details/51835119

猜你喜欢

转载自blog.csdn.net/weixin_36485376/article/details/81352082