博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
AWK常用命令总结
阅读量:7056 次
发布时间:2019-06-28

本文共 1034 字,大约阅读时间需要 3 分钟。

  hot3.png

1. awk '{print $0}' 相当于 awk '{print}' 打印当前行的全部内容
   awk '{print "--test"}' /etc/passwd 对于/etc/passwd文件中的每一行都会输出--test 
2.多字段的处理
   awk -F":" '{print $1 $3}' /etc/passwd 将 /etc/passwd文件中的每一行以:分割,然后输出第1和第3列
   awk -F":" '{print "name: " $1 "\t\tuid: " $3}' /etc/passwd 输出name和uid
3.外部脚本
  awk -f awk01.awk /etc/passwd  其中awk01.awk的内容为 BEGIN{ FS=":"} {print $1}。上面功能等同于一下代码
   awk 'BGEIN{FS=":"} {print $1}'
4.
BEGIN
END
   awk在开始处理输入文件之前会执行一次BEGIN块,同理在处理输入文件后执行一次END块
5.正则表达式,表达式和块
  awk '/[0-9]\.[0-9]*/{print}' /etc/passwd   , /[0-9]\.[0-9]*/匹配正则的行输出
  awk -F":" '$1=="daokun.zhu" {print $3}' /etc/passwd ,输出已“:”分割的行中其中第一列等于daokun.zhu那一行的第三列。
  awk提供了比较完整的运算符集合,包含==,<,>,<=,>=和!=。另外还包含了 ~,!~分别表示匹配和不匹配,用法为在运算符左边指定变量,右边指定正则表达式。如:awk -F":" '$1~/root/ {print}' /etc/passwd 输出第一列匹配root的行。
6.条件语句
  上面的例子还可以写为:awk -F":" '{if($1~/root/){print}}' /etc/passwd
  awk还允许使用布尔运算符 ||,&&
7.数字变量
   统计空白行并输出
  BEGIN {x=0}
  /^$/ {x=x+1}
 END{print "I found " x "blank lines."}
8.支持众多数字运算符

   除了+,-,*,/外还支持 ^指数,%求余,++,--,加减乘除的赋值余数符(a+=3……)

未完待续……

转载于:https://my.oschina.net/zhdkn/blog/84401

你可能感兴趣的文章
某油田调剖调驱智慧管理项目
查看>>
sp_executesql接收返回多个参数实例
查看>>
linux基础学习【4】
查看>>
忘记Linux root 密码
查看>>
fork系统调用方式成为负担,需要淘汰
查看>>
Mac PHPStorm 使用心得
查看>>
我的友情链接
查看>>
运维技巧系列之shell随机生成密码脚本
查看>>
第五周作业
查看>>
S5PC100上 LED与S3C2410上 LED 驱动对比
查看>>
Java并发编程:synchronized
查看>>
如何使用iPad的SBSettings软件的操作方法技巧
查看>>
linux服务器i节点要满啦,解决方案
查看>>
redhat支持NTFS
查看>>
数字签名是什么
查看>>
Ubuntu 14.04 LTS关于缺少libglut.so.3的解决办法
查看>>
windows下cmd时间脚本处理
查看>>
推荐27个优秀的网页色彩搭配案例
查看>>
Mysql存储过程学习笔记
查看>>
Struts 2 Stream result Action
查看>>