使用awk与shell去除字符串空格的函数示例
需积分: 13 187 浏览量
更新于2024-08-16
收藏 374KB PPT 举报
"函数去左右空格-awk与shell混合编程"
本文主要探讨了如何使用awk和shell脚本来去除字符串中的左右空格,特别是在函数`throwblank(outString)`中的实现。这个函数通过循环遍历字符串的首尾字符,判断并移除空格,从而达到去空格的效果。
首先,我们来看函数的定义:
```bash
function throwblank(outString)
{
#去掉字符串左右空格
Len=length(outString);
for(i=1; i <= Len; i++)
{
start=substr(outString, 1, 1);
if(start == " ")
{
outString=substr(outString, 2);
}
else
{
break
}
}
Len=length(outString)
if(Len == 0)
{
return 0
}
}
```
这个函数首先获取字符串`outString`的长度`Len`,然后用一个for循环从第一个字符开始检查。如果找到的是空格,就用`substr()`函数截取字符串从第二个字符开始的部分,更新`outString`。一旦遇到非空格字符,循环结束。最后,再次检查处理后的字符串长度,如果长度为0,表示整个字符串都是空格,函数返回0。
接下来,文章提到了awk编程。awk是一种强大的文本处理工具,由Alfred Aho、Peter Weinberger和Brian Kernighan共同创建,它的名字来自他们的姓氏首字母。awk不仅在Linux中,也在任何环境下都是功能强大的数据处理引擎。它支持样式匹配、流程控制、数学运算、内置变量和函数等特性,可以用来处理数据、排序、计算、生成报表等。
awk的编程结构简洁,基本形式为:
```awk
awk '{pattern+action}' {filenames}
```
其中`pattern`是awk在数据中寻找的模式,`action`是当模式匹配时执行的代码块。awk逐行扫描输入文件,如果某行符合指定的模式,就执行相应的动作。
awk与shell编程语言有相似之处,但它们各自拥有独特的语法。awk的设计灵感来源于多种语言,如SNOBOL4、sed、C语言等,它以模式匹配为基础,使得文本处理变得更加高效和便捷。
结合awk和shell,我们可以编写出高效的文本处理脚本,如函数`throwblank(outString)`所示,用于处理字符串的边缘空格。在实际的系统管理和数据分析任务中,这样的混合编程方式非常常见,能充分利用两种工具的优点,提高工作效率。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2021-01-20 上传
2009-04-14 上传
2021-01-20 上传
2022-09-19 上传
2009-11-12 上传
2011-09-03 上传
雪蔻
- 粉丝: 30
- 资源: 2万+
最新资源
- Flex 3 Cookbook.pdf
- ibatis_developing.pdf (ibatis开发指南)
- JavaScript字符串函数大全
- Modicon Modbus Protocol Ref. Guide1996
- 编码的奥秘.pdf 计算机原理
- linux svn帮助
- 初学者如何快速开发arm
- PADS Power-PCB
- FileStream 构造函数
- 按键程序(包含长按键)
- db2数据库的sqlcode
- 一些常用的SQL语句,很有用的。
- strutsInAction.pdf
- oracle标准语法速查表
- SAP 4.6 Basic Skills Self-Study Edition 2.00
- unix基本面试问答