shell编程----字符串长度和截取
发布日期:2021-06-29 01:24:10 浏览次数:4 分类:技术文章

本文共 1220 字,大约阅读时间需要 4 分钟。

方法1: 使用wc -L命令

wc -L可以获取到当前行的长度,因此对于单独行的字符串可以用这个简单的方法获取,另外wc -l则是获取当前字符串内容的行数。
代码如下:
echo "abc" |wc -L
方法2: expr length string
使用expr length可以获取string的长度
方法3: awk获取域的个数,但是如果大于10个字符的长度时是否存在问题需要后面确认
代码如下:
echo "abc" |awk -F "" '{print NF}'

方法4: 通过awk+length的方式获取字符串长度
代码如下:
echo “Alex”|awk '{print length($0)}'

方法5: 通过echo ${#string}的方式(注意:这里的string是该字符串的变量名)
代码如下:
name=Alex
echo ${#name}
Linux 的字符串截取很有用。有八种方法。
假设有变量 var=http://www.aaa.com/123.htm.
1. # 号截取,删除左边字符,保留右边字符。
 代码如下:

echo ${var#*//}

其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符
即删除 http://
结果是 :www.aaa.com/123.htm
2. ## 号截取,删除左边字符,保留右边字符。
 代码如下:

echo ${var##*/}

##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
即删除 http://www.aaa.com/
结果是 123.htm
3. %号截取,删除右边字符,保留左边字符
代码如下:

echo ${var%/*}

%/* 表示从右边开始,删除第一个 / 号及右边的字符
结果是:http://www.aaa.com
4. %% 号截取,删除右边字符,保留左边字符
代码如下:

echo ${var%%/*}

%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
结果是:http:
5. 从左边第几个字符开始,及字符的个数
代码如下:

echo ${var:0:5}

其中的 0 表示左边第一个字符开始,5 表示字符的总个数。
结果是:http:
6. 从左边第几个字符开始,一直到结束。
代码如下:

echo ${var:7}

其中的 7 表示左边第8个字符开始,一直到结束。
结果是 :www.aaa.com/123.htm
7. 从右边第几个字符开始,及字符的个数
代码如下:

echo ${var:0-7:3}

其中的 0-7 表示右边算起第七个字符开始,3 表示字符的个数。
结果是:123
8. 从右边第几个字符开始,一直到结束。
代码如下:

echo ${var:0-7}

表示从右边第七个字符开始,一直到结束。
结果是:123.htm

转载地址:https://blog.csdn.net/ytp552200ytp/article/details/85699540 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:2019年中国航空三字代码对照表完全汇总
下一篇:Linux常用配置及硬件检测命令

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月04日 00时57分40秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Atitit保证架构超前性 前瞻性 目录 第一章 为什么需要修改代码 1 第一节 业务增加功能 1 第二节 增加字段 1 第三节 增加表数据需要查询 修改 1 第四节 类库升级 1 第二章 简单抽象 2019-04-29
Atitit 存储与数据库性能调优流程目录1. 数据库出现性能瓶颈,对外表现有几个方面: 2019-04-29
Atitit 为什么oracle这类大型数据库比mysql的性能机制目录1. 分区机制差别 11.1. Join算 2019-04-29
Atitit 数据库核心技术index索引技术 btree hash lsm fulltxt目录1.1. HASH 2019-04-29
Atitit 存储引擎核心技术 总结目录1. 表的存储有三个文件:结构+数据+索引 12. 页式管理 2019-04-29
Atitit 未来数据库新特性展望目录1. 统一的翻页 21.1. 2 Easy Top-N 2019-04-29
paip.tree 生成目录树到txt后的折叠查看 2019-04-29
Attit 现代编程语言重要特性目录第一章 类型系统 基本三大类型 2第一节 字符串 数字 bool 2第二节 推断局部变量 2第三节 动态类型 2第二章 可读性与开发效率 简单性 2 2019-04-29
Atitit glb 3tie city lst 三线城市列表 数据目录1. 全球范围内约90个城市 三线 12. 世界性三线城市全球共 2019-04-29
Atitit glb 1tie 2tie city lst 一二线城市列表数据约50个一线城市Alpha ++ 阿尔法++,,London 伦敦,,New York 纽约,,Alpha + 2019-04-29
Atitit fms Strait (海峡) lst 数据列表目录1. 4大洋 12. 著名的海大约40个,总共约55个海 13. 海区列表 23.1. 、波利尼西亚(Polynesia, 2019-04-29
Atitit Major island groups and archipelagos 主要的岛群和群岛目录资料目录1. 岛群 波利尼西亚(Polynesia, 美拉尼西亚(Melanesia, 2019-04-29
Atitit trave islands list 旅游资源列表岛屿目录1. 东南亚著名的旅游岛屿 21.1. Cjkv 日韩 冲绳 琉球 济州岛 北海道 21.2. 中国 涠洲岛 南澳 2019-04-29
Atitit 旅游强县城 名单列表 旅游资源但其实,北上广深大概只占全国面积的0.33%,加上新一线城市,也只是占了全国面积的3%。在剩下的97%的土地上,有着约300个地级市,3000个 2019-04-29
【论文-笔记】海防雷达仿真系统中PPI的设计与实现 2019-04-29
2019-10-15 相交链表 2019-04-29
2019-10-28 奇偶链表 2019-04-29
2019-10-29 移除链表元素 2019-04-29
【解决】计算机用户名是中文名导致软件安装失败! 2019-04-29
雷达相关术语理解 2019-04-29