Chinaunix

标题: awk '/#BEGIN/,/#END/{next}1' 1是什么意思? [打印本页]

作者: 小木虫子    时间: 2009-08-24 11:38
标题: awk '/#BEGIN/,/#END/{next}1' 1是什么意思?
awk '/#BEGIN/,/#END/{next}1'

1是什么意思?谢谢。
作者: waker    时间: 2009-08-24 11:49
模式为真值
作者: Shell_HAT    时间: 2009-08-24 13:23
前两天刚有人问过
http://bbs.chinaunix.net/viewthread.php?tid=1551400#pid11087074
作者: kwokcn    时间: 2009-08-24 13:53
awk 'pattern{action}' file
一般awk的格式是这样的。

如果写成awk 'pattern' file,那么action默认为{print $0};
pattern如果是个定值,则判断该值是否为0(0为false,非0为true);
pattern如果是个计算表达式,则判断计算结果是否为0;
pattern如果是个awk 命令,则判断其返回值是否为0。

这样就能理解awk '1' file的意义了:
在这里action为空,因此默认为{print $0};1为定值,非0,因此执行action,即print $0。
作者: 小木虫子    时间: 2009-08-24 14:30
原帖由 kwokcn 于 2009-8-24 13:53 发表
awk 'pattern{action}' file
一般awk的格式是这样的。

如果写成awk 'pattern' file,那么action默认为{print $0};
pattern如果是个定值,则判断该值是否为0(0为false,非0为true);
pattern如果是个计 ...


收藏了。
作者: MYSQLER    时间: 2009-08-24 14:49
原帖由 kwokcn 于 2009-8-24 13:53 发表
awk 'pattern{action}' file
一般awk的格式是这样的。

如果写成awk 'pattern' file,那么action默认为{print $0};
pattern如果是个定值,则判断该值是否为0(0为false,非0为true);
pattern如果是个计 ...




那只前的/#BEGIN/,/#END/不算pattern吗?
作者: kwokcn    时间: 2009-08-24 15:04
标题: 回复 #6 MYSQLER 的帖子
那个pattern对应的是{next}这个action。
awk 'pattern{action}pattern{action}...' file。
作者: 小木虫子    时间: 2009-08-24 15:33
这么写法很少见,书上也没有介绍,今天长知识了。狼烟解释的不错。

[ 本帖最后由 小木虫子 于 2009-8-24 15:35 编辑 ]
作者: blackold    时间: 2009-08-24 15:38
有多种pattern,在{}外的都是pattern。

1这种写法经常见到啊,awk手册里面有说明。
作者: Shell_HAT    时间: 2009-08-25 10:17
标题: 回复 #4 kwokcn 的帖子
总结的好!
作者: luyi1983    时间: 2009-08-25 15:58
头丝清爽。。。色狼教头
作者: MYSQLER    时间: 2009-10-03 00:47
又看到了
作者: temp0411    时间: 2009-11-22 18:16
标题: 回复 #1 小木虫子 的帖子
该语句意思是说 删掉匹配 /#BEGIN/ 到/#END/之间的所有行, 1表示pattern为true,可以替换成 {print $0}
即:
awk '/#BEGIN/,/#END/{next} {print $0}'
作者: cheungjustin    时间: 2010-01-12 10:14
标题: 回复 #9 blackold 的帖子
那awk '/#BEGIN/,/#END/{next}2' 呢?
作者: Shell_HAT    时间: 2010-01-12 10:21
标题: 回复 #14 cheungjustin 的帖子
你自己试试1和2的区别呢?
作者: bbgg1983    时间: 2010-01-19 17:12
很牛很强大
作者: beyondfly    时间: 2010-01-19 19:58
好东西,学习了
作者: motte    时间: 2010-05-11 16:46
经典
作者: yuloveban    时间: 2011-10-31 17:40
回复 4# kwokcn


    受用了!谢谢!





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2