Awk的使用
来源:互联网 发布:流体动力学软件 编辑:程序博客网 时间:2024/05/21 20:37
今天来讲Awk的使用,首先来介绍awk的工作原理。
Awk的工作原理:将文件一行一行读入,然后对每一行再分段,段名称为$加上数字,分段依据是空格或者Tab键。
用法:awk '/模式/{命令1;命令2;...}' filename
其中上面的模式没有的话就是对全文所有行进行操作,多条命令用分号隔开。
例如who命令结果如下
比如我们想得到日期,那么命令如下
awk默认分隔符为空格或者Tab,有时候需要自己指定分隔符。比如
可以看出在/etc/passwd文件中,每一行是用冒号隔开的,一共有7部分,如果想得到最后一部分的内容,那么需要指定分隔符,使用如下命令
F:表示以冒号作为分隔符。不过这是对所有行进行操作,有时候我们只需要指定一些行来操作。如下
表示只操作含有root的行。
上面用到了$符号,注意$0表示一行的所有内容。例如
那么假设我们有时候需要找某一列中含有特定字符串的行怎么办呢 ?比如
表示打印每行第一部分含有root的所有行。
Awk在把一行内容读入内存之前,可以先做一些其它的操作,具体格式如下
awk 'BEGIN{命令}/模式/{命令1;命令2;...}' filename
BEGIN{命令} 表示在读入当前行的数据之前,先执行BEGIN中的命令。
除了输入时的分隔符,输出时也有分隔符,默认是空格,如果需要重新指定,那么用如下命令
除了BEGIN,还有END操作符。如下命令
在开始处,我们学过,awk是把文件一行一行读入的,每一行按照特定的字符分隔成很多段,那么我们怎么知道某一行是分成多少段呢? 那么就用NF这个变量。例如
表示who命令得到的文件每一行分为5个字段。
除了NF之外,还有NR,NR表示当前的处理行在源文件中是第几行。例如
除了系统自带的变量外,如NF,NR,awk还可以自定义变量。例如
好了,到了这里,关于Awk的基本用法已经就讲完了,每个部分都需要深刻理解才行,Mayuyu希望都能熟练运用。
- awk的使用(一)
- awk的使用
- awk的使用
- awk 的使用
- awk的使用
- awk的使用(1)
- awk的使用(2)
- awk printf 的使用
- awk的使用
- linux awk的使用
- awk的简单使用
- awk 命令的使用
- Awk的使用
- AWK的基本使用
- awk的使用
- awk的使用
- awk工具的使用
- awk的使用
- wegweg
- handler机制的原理
- Singleton<T>
- 自定义Android对话框
- LCD1602 -- STC
- Awk的使用
- 网关,默认网关,自动网关,路由,网关与路由器的关系
- CLR中函数引用传递无法使用ref class成员变量的问题
- 安装好android的adt以后重启eclipse,但是没有创建AVD的图标
- 排序算法(一)-希尔排序
- OGRE手札-31 从3Dmax导出动画文件
- STL算法------查找5
- 黑马程序员——File类、Properties、打印流、合并流、切割流
- 欢迎使用CSDN-markdown编辑器