在awk程序中可能最有用也是极为经常运用的命令就是print命令。在不带任何参数的情况下,print命令将一行接一行地打印出文件中的所有数据行,下面,举一个运用awk命令的最简单的例子。在这个例子中awk命令将列出由管道送来(who命令的结果)的所有数据行。其实,这个命令的显示结果与who命令没有什么分别: root@promote:~# who | awk '{print}' root tty2 2017-04-21 14:42 (:0) 敲黑板:在文件和Linux命令的结果显示中,每行信息被指定的分隔符分隔成若干个字段,每个字段都被赋予一个唯一的标识符。其中,字段1的标识符是$1,字段2的标识符是$2等。 root@promote:~# who | awk '{print $1 }' root 不仅如此,你还可以加入一些解释性的信息以使显示的结果更容易阅读,如只想显示用户名和用户现在运用的终端并且在每个用户名之前加入User,在用户名和终端之间加入 is on terminal line 字符串,命令如下: root@promote:~# who | awk '{print "User " $1 "is on terminal line " $2}' User root is on terminal line tty2 也可以将上面的命令略加改造只列出emp.data文件中的第2个字段(员工姓)和第4个字段(员工的工资),并且在员工姓前加上Employee,在员工的姓和员工工资之间加上 has salary 字符串。命令如下: root@promote:~/backup# awk '{print "Employee " $2 " has salary " $4}' emp.data Employee SMITH has salary 800 Employee ALLEN has salary 1600 …… |