AWK基础用法

AWK:

print

例子:给没个/etc/passwd下的用户都打招呼hello
答案:

awk '{print "hello:"$1}' /etc/passwd
内建变量
FS : 输入分隔符
OFS: 输出分隔符
RS : 行输入分隔符
ORS: 行输出分割符
NF : 字段数
NR : 行号数
FNR: 每个文件的行号数
ARGC: 参数个数
ARGV: 数组形式保存
printf
%c :显示字符的ASCII码
%d :显示十进制整数
%e :科学计数法显示
%f :显示浮点数
%g :以科学计数法显示浮点数
%s :显示字符串
%v :无符号整数
%% :显示%本身
修饰符:
%15s 行距离
-减号:左对齐
+加号:显示数值正整号
PATTERN
BEGAIN:开始处理一次
END :结束后执行一次
控制语句和数组
if( ){ } else { } 语句
for( ; ; ) { } 语句
while( ) { } 语句
for( in ) { }语句
例子:显示/etc/passwd文件中位于文件的第偶数行的用户名;并显示共有多少个这样的用户
答案:

awk -F: '{if (NR%2==0) {count++;print $1}} END {print "Total Users:"count" "}' /etc/passwd
例子:netstat -tan 打印tcp链接状态的统计数
答案:

netstat -tan | awk '{if(NR>2)count[$NF]++}END{for(i in count)print i,count[i]}'
例子:统计/etc/fstab文件中每个文件系统类型出现的次数
答案:

awk '/^[^#]/{count[$3]++}END{for(i in count) print i,count[i]}' /etc/fstab
例子:统计/etc/fatab文件中每个单词出现的次数
答案:

awk '{for(i=1;i<NF;i++){count[$i]++}}END{for(i in count) print i,count[i]}' /etc/fstab

原创文章,作者:z long,如若转载,请注明出处:http://www.178linux.com/76717

(0)
z longz long
上一篇 2017-05-22 19:24
下一篇 2017-05-22 20:25

相关推荐

  • 马哥教育网络班21期-第六周课程练习

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;  # :%s@^[[:space:]]\+@#&@g 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符; &nb…

    Linux干货 2016-08-15
  • 第一天

    今天讲了很多

    Linux干货 2018-03-26
  • DHCP使用帮助

    bootp 想要通过tcp/ip模型进行网络通信需要有一个ip地址,IP地址是属于操作系统的,所以没有操作系统就没有ip 为了解决这种问题,有一种网卡可以不需要操作系统就能获取到ip bootp:只有第一次是动态获得,以后ip地址就是和mac地址绑定的,不能分配给其他主机 DHCP:DHCP是bootp的改进版,主要引入了租约的定义 DHCP也可以根据mac…

    Linux干货 2016-11-11
  • Ansible安装部署及常用模块详解

    Ansible命令使用 Ansible语法使用ansible <pattern_goes_here> -m <module_name> -a <arguments> -m NAME,–module-name=NAME:指定执行使用的模块 -u USERNAME,–user=USERNAME:指定远程…

    2017-07-11
  • 磁盘分区管理与文件系统的创建

    磁盘分区管理与文件系统的创建   不光是linux文件系统,所有的大结构,多数据凑到一块的时候,单一的管理是没有能力处理这样庞大规模的存在的。所谓“君王不下县”也就是这个道理。要系统的,规范的管理一个国家,存在着省、市这样的层级结构。linux系统也是这样,将整个系统划分为若干个分区,实现不同功能,不同层级的规范管理,这就是创建磁盘分区的意义。既然…

    Linux干货 2016-09-01
  • nginx学习

    nginx    nginx的核心配置项:        Core functionality:核心配置,Glob配置段            daemon:是否开启为守护进程        &nbs…

    2017-05-08