【shell编程】awk内置函数
正文
awk内置函数
函数split原型:
split(string, array, fieldsep)
说明:
string
是要拆分的字符串。array
是存储拆分结果的数组名。fieldsep
是用于分隔字符串的分隔符。
split
函数返回值是数组中的元素个数,即成功将字符串拆分成几部分。这个返回值对于理解拆分操作的成功与否很有用。
#!/bin/bash
time="12:34:56"
out=`echo $time | awk '{split($0,a,":");print a[1],a[2],a[3]}'`
echo $out
输出:
12 34 56
给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。
`dd`
test.txt:
Tom 2012-12-11 car 53000
John 2013-01-13 bike 41000
vivi 2013-01-18 car 42800
Tom 2013-01-20 car 32500
John 2013-01-28 bike 63500
语法:
awk '{split($2,a,"-");if(a[2]==01){b[$1]=b[$1]+$4}}END{for(i in b)print i,b[i]}' test.txt
输出结果:
vivi 42800
Tom 32500
John 104500
length函数返回没有参数的字符串的长度。length函数返回整个记录中的字符数。
echo "abc" | awk '{print length}'
输出结果:
3
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步