(转)Shell中获取字符串长度的七种方法

Shell中获取字符串长度的七种方法

原文:http://blog.csdn.net/jerry_1126/article/details/51835119

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

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

 

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

备注:

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

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

 

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

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

 

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

备注: -L参数

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

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

 

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

备注: 

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

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

 

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

 

 

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

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

转载于:https://www.cnblogs.com/liujiacai/p/7828568.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/252909.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux下用core和gdb查询出现段错误的地方

有些时候我们在一段C代码的时候,由于对一个非法内存进行了操作,在程序运行的过程中,出现了"段错误"。呵呵,这种问题我想很多人会经常遇到。遇到这种问题是非常无语的,只是提示了"段错误"&#xff…

第一篇-Html标签中head标签,body标签中input系列,textarea和select标签

第十四周课程(1-12章节) HTML 裸体 CSS 穿华丽衣服 Javascript 动起来 一 HTML (20个标签) 1.我们的浏览器是socket客户端 2.一套规则,浏览器认识的规则 3.开发者: 学习html规则 开发后台程序&#xff1a…

opencv3.2.0 Cmake 3.8.0 + tdm-gcc-5.1.0-3

实测 tdm-gcc-5.1.0-3 tdm32-1 32位版本无法正确编译Opencv 3.2.0 会遇到诸多编译问题 解决办法 使用tdm-gcc-5.1.0-2 tdm64-1 64位版本转载于:https://www.cnblogs.com/fundou/p/6710209.html

什么是商品属性

一、什么是商品属性: Definition of Product Attributes A product attribute is a characteristic that defines a particular product and will affect a consumers purchase decision. Product attributes can be tangible (or physical in nature) or intangibl…

linux用户管理(1)----创建用户(adduser和useradd)和删除用户(userdel)

arm linux的系统用户管理: 1、删除root用户:deluser root2、删除tt用户:deluser tt3、建立root用户:adduser root4、修改用户密码:登录相应的用户后,用passwd来修改密码4、linux用户和密码的管理(ftp&#…

前端性能优化之图像优化原理

前端性能优化中,图像的优化是非常重要的一环,为什么要说图像的优化呢,而不是我们常见的图片优化?因为这里的图像包括矢量图和位图,我们常说的图片优化是指位图的优化。这篇文章转载至奇舞周刊,大佬总结的非…

Lua开发学习4-普通循环和迭代器循环

说句实话,每当看到Lua代码,我都感觉是半个SQL代码,写起来还是感觉有点恐怖。 while循环: 与C#的while循环类似,没有什么好说的; --------Lua的while循环 while(condition)dostatementsend For循环 exp1为起…

什么是js的严格模式

设立严格模式的原因: - 消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为; - 消除代码运行的一些不安全之处,保证代码运行的安全; - 提高编译器效率,增加运行速度; - 为未来新版本的Javascrip…

Linux驱动设计ioctl函数的cmd参数不能为2

Linux驱动程序设计的时候偶然发现的ioctl()函数的cmd参数不能为2,如果为2,ioctl()函数返回-1,网上说就是这样的,正常,不知道为什么,stack overflow上有一个外国学友的建议: “In general, you want to comp…

代码解说Android Scroller、VelocityTracker

在编写自己定义滑动控件时经常会用到Android触摸机制和Scroller及VelocityTracker。Android Touch系统简单介绍(二):实例具体解释onInterceptTouchEvent与onTouchEvent的调用过程对Android触摸机制须要用到的函数进行了具体的解释。本文主要介绍两个重要…

Effective_STL 学习笔记(四十四) 尽量使用成员函数代替同名的算法

有些容器拥有和 STL 算法同名的成员函数。 关联容器提供了 count、find、lower_bound、upper_bound 和 euqal_range list 提供了 remove、remove_if、unique、merge 和 reverse 大多数时候应该用成员函数代替手写算法,这样做的两个理由: 比起算法&#x…

(NFS移植到arm上)编译portmap和nfs-utils

为了在播放机上实现NFS服务器的功能,我们已经在uClibc中打开了完整RPC支持,并且在新编译的内核中打开了NFS服务器支持。此外还有两个软件包也是提供NFS服务所必需的:portmap和nfs-utils。portmap为RPC程序提供端口映射服务,nfs-ut…

HTML5上传预览

http://cobain-li.iteye.com/blog/2296538转载于:https://www.cnblogs.com/winyh/p/7850049.html

支付宝支付

1 申请商户平台 2 申请开放平台 3 申请APP支付 4 创建应用 (名称,logo) 5 生成RSA秘钥(公钥,私钥) 6 在应用中配置公钥 7 配置其他内容,包括iOS bundle ID。配置安卓包名,和签名。 获取appid,公…

HttpRequest Java原生代码封装

HttpRequest Java原生代码封装 get提交 post提交 name1value1&name2value2 的形式 json形式两种形式 package com.beisun.mbp.mbp.controller;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWrit…

Linux 系统目录

/ 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件等 /dev 存放设备文件 /etc 存放系统的配置文件 /home 用户文件的主目录,用户数据存放在其主目录中 /lib 存放必要的运行库 /mnt 存放临时的映射文件系统,我们常把软驱和光驱挂装在这里的…

linux多线程学习设置线程调度权限

pthread_setschedparam 设置线程的权限 int pthread_setschedparam(pthread_t target_thread, int policy, const struct sched_param *param) 参数 1. target_thread是使用pthread_create所获得的线程ID。   2.线程的调度有三种策略:SCHED_OTHER、…

不可错过的CMS学习笔记

引子 带着问题去学习一个东西,才会有目标感,我先把一直以来自己对CMS的一些疑惑罗列了下,希望这篇学习笔记能解决掉这些疑惑,希望也能对你有所帮助。 CMS出现的初衷、背景和目的? CMS的适用场景? CMS的tr…

团队合作及个人成长

通过前一章的学习,我了解到了关于建模的很多初步的知识,但是这和成为一名软件工程师是远远不够的,完成一个程序通常都是一个团队,而这个团队重要的肯定是需要一些流程,这样才能让程序有条不紊的运行着。在这么一个团队…

相机工作原理

轻轻一按,你的相机就把光子转换为了比特。于是一张相片就保存到了你的 iPhone 里。 让我们假设一下你身处室外,环顾四周。三亿里之外,太阳无时无刻不在发射光子。它们需要花上 8 分钟之久才能到达我们舒适的星球。有一些光子撞击到你周围的物…