标签:awk
常用的内置函数
1、split
语法:split(string, array [, fieldsep [, seps ] ])
功能:将string表示的字符串以fieldsep为分隔符进行分隔,并将分隔后的结果保存至array为名的数组中;
数组下标为从1开始的序列;
[root@xxx ~]# df -h|awk ‘!/^File/ {split($5,USE,"%");print USE[1]}‘
17
0
7
7
[root@xxx ~]# df -h|awk ‘!/^File/{split($5,USE,"%");if(USE[1]>10)print $1,"USE:"USE[1]}‘
/dev/sda2 USE:17 #不知道什么场景中才会用到这个,2、length
语法:length([string])
功能:返回string字符串中字符的个数;
[root@xxx ~]# awk -F: ‘/oo/{print $1,length($1)}‘ /etc/passwd
root 4
lp 2
mail 4
uucp 4
operator 8
postfix 7
[root@xxx ~]# awk -F: ‘/oo/{print $1,length}‘ /etc/passwd
root 36 #这里表示整行的字符个数
lp 40
mail 46
uucp 47
operator 44
postfix 493、substr
语法:substr(string, start [, length])
功能:取string字符串中的子串,从start开始,取length个;start从1开始计数;
[root@xxx ~]# awk -F: ‘/oo/{print substr($1,1,3)}‘ /etc/passwd #第1个和第三个字符怎么取?
roo
lp
mai
uuc
ope
pos4、
tolower(s)
功能:将s中的所有字母转为小写
toupper(s)
功能:将s中的所有字母转为大写
[root@xxx ~]# awk -F: ‘/oo/{print tolower($1)}‘ /etc/passwd
root
lp
mail
uucp
operator
postfix
[root@xxx ~]# awk -F: ‘/oo/{print toupper($1)}‘ /etc/passwd
ROOT
LP
MAIL
UUCP
OPERATOR
POSTFIX
[root@xxx ~]#5、 sub gsub
标签:awk
原文地址:http://xiexiaojun.blog.51cto.com/2305291/1698150