脚本专栏 
首页 > 脚本专栏 > 浏览文章

Shell获取字符串长度的多种方法总结

(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )

前言

我们在日常工作中,对于求字符串操作在shell脚本中很常用,实现的方法有很多种,下面就来给大家归纳、汇总了求字符串的几种可能方法,话不多说了,来一起看看详细的介绍吧。

方法如下:

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

Shell获取字符串长度的多种方法总结

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

Shell获取字符串长度的多种方法总结

备注:

     1) 最好用{}来放置变量

     2) 也可以用length($0)来统计文件中每行的长度

Shell获取字符串长度的多种方法总结

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

Shell获取字符串长度的多种方法总结

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

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

Shell获取字符串长度的多种方法总结

备注: -L参数

      1) 对多行文件来说,表示打印最长行的长度! 82,表示/etc/passwd文件最长行的长度为82

      2) 对单行字符串而言,表示当前行字符串的长度!

【方法五】:利用wc的-l参数,结合echo -n参数

Shell获取字符串长度的多种方法总结

备注:

       1) -c参数: 统计字符的个数

       2) -n参数: 去除"\n"换行符,不去除的话,默认带换行符,字符个数就成了7

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

Shell获取字符串长度的多种方法总结

【方法七】:利用expr的$str : ".*"技巧

Shell获取字符串长度的多种方法总结

备注: .*代表任意字符,即用任意字符来匹配字符串,结果是匹配到6个,即字符串的长度为6

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。

上一篇:Linux中的bz2压缩格式的实例详解
下一篇:Linux禁止普通用户su至root的解决方法
一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。