AWK使用解析

Cut命令的局限

df -h | cut -d “ ” -f 5 /etc/passwd

cut命令无法正确截取以空格为分隔符的内容

AWK格式

awk ‘条件1{动作1} 条件2{动作2}…’ filename

条件(Pattern)[一般使用关系表达式作为条件]:

x>10  判断变量 x是否大于10

x>=10  大于等于

x<=10  小于等于

动作(Action):

格式化输出:printf,print[会自动添加\n]

流程控制语句:if/for

截取/分区使用的百分比

df -h | grep sda2 | awk ‘{print $5}‘ | cut -d% -f1

BEGIN

awk ‘BEGIN{printf "This is a test Script\n"}{print $2 "\t" $5}‘ student.txt  #最先执行BEGIN后跟的命令

awk ‘BEGIN{FS=":"} {print $1 "\t" $3}‘ /etc/passwd #显示指定分隔符

awk -F: ‘{print $1 "\t" $3}‘ /etc/passwd #同前

END

cat /etc/passwd | grep /bin/bash | awk -F: ‘END{print "The End..."}{print $1 "\t" $3}‘ #在命令结束之前打印END跟随的内容

关系运算符

cat student.txt | grep -v NAME | awk ‘$3>=80 {print $2}‘

awk ‘$3>=80 {print $2}‘ student.txt | grep -v NAME #可能会报错

时间: 2024-10-06 21:54:43

AWK使用解析的相关文章

Linux文本处理工具AWK使用解析

在linux系统上有三大文本处理工具分别是:grep,sed,awk,这次主要来看看awk. awk  option  'pattern'  file -F    指定分隔符: -v     申明自定义变量: 查看当前系统上,用户名和用户shell,输出分隔符为~. # awk -F: 'BEGIN{OFS="~";print "UserName   Shell"}{print $1,$7}END{print "================end===

awk工具-解析1

awk处理方式: 1.行处理机制,每次处理一行,跟sed很相近,但是awk还能够对每行进行切片处理 基本格式: awk [options]  'command' file(s) command:pattern {awk 操作命令}两部分组成 pattern:正则表达式,逻辑表达式 awk操作指令是用{ }代表代码段: 操作指令:print(), printf() 控制指令:if(){... } else{...},while(){...} awk内置参数应用: awk内置变量1: $0 代表整行

awk 知识的梳理

接触 Bash shell 有一段时间了,其中awk命令用的很多,不过一直觉得有些细节记不清楚,每次都要查一下. 一般这种时候我喜欢把知识按块分开,梳理成这种有条理的块状结构更适合我的大脑记忆. 根据实际工作中常用的可以分以下几块: 1,awk 文本解析原理:也就是按行处理文本.其速度十分喜人. 2,awk 环境变量的应用.常用的有FS(文本分割符号,可以自己在BEGIN定义),NR(当前行号),NF(列数)的等. 其他的可以看这里http://www.cnblogs.com/repositor

Linux Shell | 解析xml节点

01 xml文件 # user.xml <user> <name>Toy</name> <sex>man</sex> <room/> </user> 其中第 5 行的<room/> xml 节点是空节点,是比较特殊的格式. 02 多条命令解析xml节点 采用多条命令和管道符也可以解析xml节点,方式如下: [~]$ cat user.xml | grep name | sed 's/^.*<name>

shell 学习笔记1501-1800

1501.巧用bash的{}扩展备份目录: cp file.txt{,.bak} 1502.利用at执行一次性命令: echo "ls -l" | at midnight #Execute a command at a given time 1503.kill -1 或者 kill -HUP 一般用来重新读取配置文件:(一般程序自己实现的) HUP 其实就是给个信号,你的程序可以根据这个信号做一些事情,比如reload进程,或者是rotota日志.例如 squid.Nginx.xine

浅谈Heatmap

在自然界之中,蛇的眼睛有夜视功能,即便是茫茫黑夜,它也能轻而易举的找到猎物,这是因为任何物体都会辐射热红外,且辐射的高低和温度成正比,由于生命体的体温会明显高于周围环境的温度,所以在蛇眼面前便无处遁形.热红外成像被广泛应用于军事领域,士兵带上能识别热红外的眼镜后能轻而易举的发现藏匿的敌人. 热红外成像 唠叨了半天,听上去似乎有点跑题了,其实不然,对互联网从业者而言,同样需要有火眼金睛,以便识别网友的喜好,此时的衡量标准是点击,点击越多则表示越喜欢,此技术被称作Heatmap,已经有网站提供此类服

高级Bash脚本编程指南

http://tldp.org/LDP/abs/html/ 高级Bash脚本编程指南对脚本语言艺术的深入探索 本教程不承担以前的脚本或编程知识,但进展迅速走向一个中级/高级水平的指令...一直偷偷在细小的UNIX®智慧和学识.它作为一本教科书,一本手册,自学,并作为一个参考和知识的来源,壳牌的脚本技术.练习和大量的评论实例请读者参与,在这样的前提下,真正学习脚本的唯一途径是编写脚本.这本书是适合课堂使用的一般介绍编程的概念.本文件被授予公共领域.没有版权! 奉献对于安妮塔,所有魔术的来源内容表第

正则表达式解析 & awk/sed/grep实用实例总结文档

##正则表达式特殊字符解析 "^" 匹配行首 "$" 匹配行尾 "^$" 匹配整行为空,空行 grep -v "^$"    打印非空的行 "."  代表且只能代表任意一个字符 "*" 重复0个或多个前面一个的字符.例如"o*",重复一个或多个o ".*"  匹配所有字符.延伸: "^.*" -->以任意多个字符开头.&q

Linux基础:awk &amp; sed &amp; uniq &amp; split 解析文本

 grep -Eni '(.+center.+){6}' TestSummaryReport.html|awk -F'<td align="center">' '{print $4}' test.html grep 查询对应行 grep -Eni '(.+center.+){6}' test.html --正解 grep -Eni '(center){6}' test.html 查询为空因为用center进行精确匹配,空格做分隔符找不到相应内容,必须在center前后加上.