awk先看这里
来源:互联网 发布:南京大学网络教育安徽 编辑:程序博客网 时间:2024/04/29 06:08
awk '模式'
awk '{action}'
awk '模式{action}' ( awk -F. '$1=="192"{print $0}' )
模式:是由某种类型的表达式组成,表达式中没有出现if,但是计算时却暗含if这个词。
所有的操作都在{}中,如果没给出,则采用默认操作,打印包含模式的行。
awk 工作原理
1) awk 使用一行作为输入,并将这一行赋值给内部变量$0
2) 行被空格分解成字段,每个字段存储在已经编号的变量中,从$1开始,多大100字段。
3) awk如何知道空格是用来分隔字段的呢?因为有另外一个内部变量FS用来确定字段的分隔符。初始化时,
FS被默认为空格(制表符和空格)。如果需要使用其他的字符,FS重新复制就行了, 用 -F 改变分隔符 awk -F: '{xxx}'
1) 每次处理完一天记录NR的值就加1
2) awk在NF中保存记录的字段数
3) 对awk而言,正则表达式是置于两个正斜杠之间的模式。
4) 范围模式
例子: awk '/Tome/,/linwen/'
从Tom首次出现到linwen首次出现的所有行,如果没linwen,就一直到文件。
在linwen之后又出现Tome则从开头开始。
5) BEGIN 模式在读入数据行之前执行,后面跟一个操作块。 BEGIN {print "PGM begin"}
6) END 模式在处理完所有行之后处理, ( awk -F. 'BEGIN{print "begin"} $1=="192"{print $0} END{print "END"}' )
7) 重定向:
输出重定向,重定向的目标文件必须用双括号括起来。如 awk '{print $0 > "out.file"}'
8) 管道: 如果在awk中打开了管道,就必须先关闭它才能打开另一个管道,管道符右边命令被
双括号括起来。如 awk '{print $1,$2 | "sort -r +1"}'
关闭 close("sort -r +1")
9) awk '{print $0}'
awk -F. '{print $1}' ' 前面有个空格
10) awk -F. 'BEGIN{print "begin"} $1=="192"{print $0;print length($0)} END{print "END"}' ; 为分隔符,
- awk先看这里
- 看这里看这里看这里
- 看这里
- params 看这里看这里
- 据说这个东西高深,没看懂,先还是留我这里,空了看
- 先到这里试验一下~~
- 模糊查询与索引(先看,这里从模糊查询语法非哪种索引角度来提高查询效率)
- HI,myboy,看这里
- MYSQL1067错误看这里
- MYSQL1067错误这里看
- 联系看这里
- js基础看这里
- Fragment bug看这里
- SASS看这里
- 信用提升看这里
- 先来看看
- 先看易经,后看推背图。
- QoS 先来看看
- Apache + PHP下载权限控制机制
- Eclipse里面快捷键的设置
- VIM那点儿事儿
- PDF文件的读写(使用SDK).(一).闲谈PDF SDK
- 猜五个人座位顺序游戏,给出的条件是:每个说出左边和右边是谁,只有一边说的对的,另一边是错的.
- awk先看这里
- 生活的节拍
- Struts2_0800_DomainModelParamInput 关于用类实现参数 使用Domain Model接收参数
- 在windows上配置Apache和PHP
- 人力资源HR管理系统源码
- 办公室美学:提升个人工作效率与形象
- S60:开发环境搭建(2)
- C:1-6
- C:1-7