awk 命令详解

命令详解  

awk是linux中的查询命令,也是Linux 中常用来查询和筛选一些重要的信息。

(1)last -n 5   列出过去登陆系统用户相关信息 

(2)last -n 5 | awk '{print $1}'                   要求只显示登陆账号 ; $1表示登录用户,$2表示登录终端以此类推

(3)cat /etc/passwd | awk -F ':' '{print $1}'        这种是awk+action的示例,每行都会执行action{print $1}。

(4)cat /etc/passwd | awk -F ':' '{print $1 " " $7}'   而账户与shell之间以tab键分割 " "
(5)cat /etc/passwd | awk -F ':' '{print $1 "," $7}'    而账户与shell之间以逗号 分割","
(6)cat /etc/passwd | awk -F ':' 'BEGIN {print "name,shell"} {print $1 " " $7} END {print "blue,/bin/nosh"}'     

   只显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以逗号分割,并且在所有行添加列名name,shell,在最后一行添加"blue,/bin/nosh"。

(7)awk -F ':' '/root/' /etc/passwd      搜索/etc/passwd有root关键字的所有行

(8)awk -F ':' '/root/ {print $7} ' /etc/passwd      搜索/etc/passwd有root关键字的所有行,并显示出对应的shell

参数解析:

-n显示行数

-F指定域分隔符为':'

原文地址:https://www.cnblogs.com/daiorz/p/11688508.html