awk基础---回顾

报告生成工具,每一行的每个字段分别进行格式化,而后进行显示

******************************

支持使用变量、条件判断、循环、数组

awk-->new awk-->nawk

按行进行逐字段过滤处理并显示

*************切割后*****************

$0表示整行

$1 $2...依次表示第一个第二个...字段

**************用法格式****************

awk [options] ‘script‘ FILE...

awk [options] ‘/pattern/{action}‘ FILE...

action:print $1,$2,$3

模式:

地址定界:/pat1/,/pat2/

/pattern/

expression:表达式

> >= < <= == != ~

BEGIN:执行前操作

END:执行后的收尾工作

awk的常用四种分隔符

输入:

行分隔符

字段分隔符

输出:

行分隔符

字段分隔符

########

字段间可任意写入字符

awk -F : ‘/^root/{print "User name:",$1,"\nShell:", $7}‘ passwd

########

! 模式取反

df -h | awk ‘!/^Filesystem/{print $1}‘

########

字段做条件判断,表达式的使用

awk -F : ‘$3>=400{print $0}‘ passwd

awk -F : ‘$7~/bash$/{print $0}‘ passwd

########

BEGINEND

awk -F : ‘BEGIN{print "User name\n-------------------"}$7~/bash$/{print $1}END{print "________________\n3 User"}‘ passwd

########

FS OFS定义在BEGIN

awk ‘BEGIN{FS=":"}$3>=400{print $1}‘ passwd

awk ‘BEGIN{FS=":";OFS="@"}$3>=400{print $1,$2}‘ passwd

*************内置变量*****************

NF:字段数 number of field

FS: field separator指定输入分隔符,可在BEGIN中定义,指定时要使用"",默认为空白

OFS:输出时指定的分隔符,在BEGIN中定义,指定时要使用"",默认为空白

**************练习****************

1.显示GID小于500的组

awk -F : ‘$3<500{print $1}‘ /etc/group

awk ‘BEGIN{FS=":"}$3<500{print $1}‘ /etc/group

2.显示默认的shell为nologin的用户

awk -F : ‘$7~/nologin$/{print $1}‘ /etc/passwd

awk ‘BEGIN{FS=":"}/nologin$/{print $1}‘ passwd

3,显示eth0网卡文件的配置信息,注意,只显示等号后面的值

awk -F = ‘{print $2}‘ /etc/sysconfig/network-scripts/ifcfg-eth0

awk ‘BEGIN{FS="="}{print $2}‘ /etc/sysconfig/network-scripts/ifcfg-eth0

4.显示/etc/sysctl.conf文件中定义的内核参数:只显示名称,

awk -F =‘ !/^#|^$/{print $1}‘/etc/sysctl.conf

awk ‘BEGIN{FS="="}!/^#|^$/{print $1}‘ /etc/sysctl.conf

5.显示eth0网卡的ip地址,通过ifconfig命令结果进行过滤

ifconfig eth0 |awk ‘/inet addr/{print $2}‘ |awk -F : ‘{print $2}‘

后续再加awk的高级部分

时间: 2024-10-13 23:27:59

awk基础---回顾的相关文章

AWK基础讲解笔记

目录 awk课程总结... 1 第1章 awk基础入门... 1 1.1 awk基础入门... 1 1.2 awk简介... 1 1.2.1 一种名字怪异的语言... 1 1.2.2 模式扫描和处理... 1 1.3 学过awk可以掌握的内容... 1 1.4 awk命令... 1 1.5模式及pattern,可以类似理解成sed的模式匹配,可以由表达式组成,也可以是俩个正斜杠之间的正则表达式,比如:NR==1 ,这就是模式,可以理解为一个条件.... 2 1.6动作即action,是由在大括号

awk基础知识小结(1)

1.使用规则 awk 适合于文本处理和报表生成,它还有许多精心设计的特性,允许进行需要特殊技巧程序设计. awk  的语法较为常见.它借鉴了某些语言的一些精华部分,如C 语言.python 和 bash. 第一个 awk 让我们继续,开始使用 awk,以了解其工作原理.在命令行中输入以下命令: $ awk '{ print }'  /etc/passwd 您将会见到 /etc/passwd 文件的内容出现在眼前.现在,解释 awk 做了些什么.调用 awk 时,我们指定  /etc/passwd

awk基础知识小结(2)

10.循环结构循环结构awk 的 while 循环结构,它等同于相应的 C 语言 while 循环.awk 还有 "do...while" 循环,它在代码块结尾处对条件求值,而不象标准 while 循环那样在开始处求值.它类似于其它语言中的 "repeat...until" 循环.示例:do...while 示例 {     count=1     do {    print "I get printed at least once no matter w

【DAY26】JAVA 基础回顾

基础回顾 ---------------- 1.跨平台 os JVM : sandbox 1995 2.基本数据类型 byte //1 -128 ~ 127 short //2 -32768 - 32767 int //4 long //8 float //4 doule //8 char //2 boolean //1 3.引用类型 [] class interface 4.运算符 && //短路 || //短路 & // | // ^ //抑或,相同0,不同为1 >>

Linux基础回顾(2)——Linux系统分区二三事

问题来自Linux教材,答案自我整理难免会有不足之处.这是我Linux期末的总结 1. 一块硬盘上可以有几种类型的分区?各自可以有多少个?(各个分区能安装操作系统吗?) 硬盘分区有三种类型的分区:主分区,扩展分区,逻辑分区:一个硬盘最多能划分4个主分区,或者3个主分区加上一个扩展分区,扩展分区上可以划分多个逻辑分区(最多20个).能安装操作系统. 2.用户能否在安装过程中创建扩展分区呢? 分区工具在文件系统类型中没有提供扩展(extended)分区类型,即用户不能根据需要不能手工创建扩展分区.安

PHP移动互联网开发笔记(6)——MySQL数据库基础回顾

最近看了一些架构方面的资料,但是发现基础知识都不怎么牢固,接下来的一段时间,我会定期总结基础知识. 一.数据类型 1.整型 数据类型 存储空间 说明 取值范围 TINYINT 1字节 非常小的整数 带符号值:-128~127 无符号值:0~255 SMALLINT 2字节 较小的整数 带符号值:-32768~32767 无符号值:0~65535 MEDIUMNT 3字节 中等大小的整数 带符号值:-8388608~8388607 无符号值:0~16777215 INT 4字节 标准整数 带符号值

[C#] C# 基础回顾 - 匿名方法

C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ≥ C# 3.0 的版本中,我们会用 Lambda 表达式进行取代匿名方法,并且用 Lambda 表达式作为编写内联代码的首选方式,因为它更简洁. 匿名方法是,顾名思义,匿名方法就是没有名称的方法.匿名方法最明显的好处就是:可以降低额外另写一个方法的工作量:另外一个好处就是可以直接访问调用者的变量,

awk程序设计语言之-awk基础

awk程序设计语言之-awk基础 1 http://man.linuxde.net/ 2 7 8 常用工具命令之awk命令 9 awk是一种编程语言,用于在Linux/Unix下对文本和数据处理.数据可以来自标准输入(stdin).一个或多个文件,或其他命令的输出.它支持用户自定义函数和动态正则表达式 10 等先进功能,是Linux/unix下的一个强大编程工具.它在命令行中使用,但更多是作为脚本来使用,awk有很多内建功能,比如数组.函数等,这是它和c语言的相同之处,灵活性 11 是awk最大

四、Android学习第四天——JAVA基础回顾(转)

(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 四.Android学习第四天——JAVA基础回顾 这才学习Android的第四天,在程序中已经遇到了JAVA中以前不常用的一些知识点,赶紧回顾复习一下,打下基础 这里就做个简单的小结: 一.匿名内部类 匿名内部类说白了就是个没有被命名的JAVA类 在以下条件下使用匿名内部类比较适合: ①只用到该类的一个实例时 ②类在定义后被马上用到 ③类非常小(SUN推荐是在4行代码以下