技术提示:Gawk 的乐趣

作者:James Hinnant

当 grep 和 sed 不够用时,gawk 可以提供您所需的额外马力。以下提示包含了一些可以使用 gawk 完成的事情的示例。

从文本文件中提取以空格分隔的最后一列

cat myfile | gawk '{print $NF}'

或者

gawk '{print $NF}' myfile

列出当前目录中每个用户拥有的文件计数

/bin/ls -l | \
    gawk 'NR > 1 {counts[$3]++;}
          END {for (s in counts) {
                   printf("  %-15s : % 5d\n",
                          s, counts[s]);}}' | \
        sort

杀死您的进程(一种用途是杀死一个挂起的登录,如果您可以从另一台机器远程登录到工作站)

ps -elf | \
    gawk -v me="$USER" '$3 == me {print $4}' | \
        egrep -v $$ | \
            xargs -i@@ kill -9 @@; kill -9 $$
加载 Disqus 评论