bwangel23
11/23/2016 - 5:14 AM

AWK Programming Language examples

AWK Programming Language examples

# $3 > 5 {
#     emp = emp + 1
#     names = names $1 " "
#     }
# END {
#     print emp "个人的工时超过了5小时,他们是" names;
#     }

# 计算平均薪资,注意NR为0的情况未处理
# -----------------------------------
# {
#     pay = pay + $2 * $3
#     }
# END {
#     print "共有"NR"个员工";
#     print "总共薪资为", pay;
#     print "平均薪资为", pay / NR;
#     }

# 计算时薪最高的雇员
# ------------------
# $2 > maxrate {
#     maxrate = $2; maxemp = $1;
#     }
# END {
#     print "时薪最高的雇员是", maxemp, "其时薪是", maxrate;
#     }

# 字符串拼接
# 用来存储字符串的变量默认为空字符串,也就是说字符串不需要显示地初始化
# ----------------------------------------------------------------------
# {
#     names = names $1 " "
#     }
# END { print names }

# 打印最后一行
# ------------
    # { last = $0 }
# END {
    # print last;
    # }

# 获取每个人名字的长度
    # { print $1, length($1) }

# 行,字符,单词的计数
# 为了方便,我们把每个字段当成一个单词
    # {
    #     nc = nc + length($0) + 1;    # 1 为换行符的长度
    #     nw = nw + NF;
    #     }
# END {
    # print NR, "lines", nw, "words", nc, "characters";
    # }
Michael	23	0
John	21.3	0
Lisa	44	5
Edward	73	9
Tomas	63	8.1
vv2x	29	8.4