加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Shell在计算包含转义字符(\)的字符长度时的验证说明

发布时间:2020-12-15 04:55:24 所属栏目:安全 来源:网络整理
导读:《Shell在计算包含转义字符()的字符长度时的验证说明》要点: 本文介绍了Shell在计算包含转义字符()的字符长度时的验证说明,希望对您有用。如果有疑问,可以联系我们。 前面的一篇文章《[Linux]如何在Shell脚本中计算字符串长度?》介绍了如何使用Shell计

《Shell在计算包含转义字符()的字符长度时的验证说明》要点:
本文介绍了Shell在计算包含转义字符()的字符长度时的验证说明,希望对您有用。如果有疑问,可以联系我们。

前面的一篇文章《[Linux]如何在Shell脚本中计算字符串长度?》介绍了如何使用Shell计算字符长度,但小魔发现当字符串中包含转义字符时,文章所提供的几种方法会将转义字符统计在内,通过我在环境中的测试,先直接给出验证结论:
1. 若转义字符后跟随的是特殊字符,例如:$,那么在计算字符串长度时,会自动将转义符排除掉;
2. 若转义字符后跟随的不是特殊字符,而是字母、数字之类的,则会将转义符计算在内.

下面我们从这两个结论的场景去验证,详细验证过程如下:

验证场景1:当转义符后跟随的不是特殊字符,是字母的场景,这时计算出来的字符串str=”abcn”的长度是5

[root@tektea ~]# str=”abcn”
[root@tektea ~]# echo $str | wc -L
5
[root@tektea ~]# echo $str | awk -F “” ‘{print NF}’
5
[root@tektea ~]# echo $str | awk ‘{print length($0)}’
5
[root@tektea ~]# echo ${#str}
5

验证场景2:当转义符后跟随的是特殊字符,这时计算出来的字符串str=”abc$”的长度是4

[root@tektea ~]# str=”abc$”
[root@tektea ~]# echo $str | wc -L
4
[root@tektea ~]# echo $str | awk -F “” ‘{print NF}’
4
[root@tektea ~]# echo $str | awk ‘{print length($0)}’
4
[root@tektea ~]# echo ${#str}
4

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读