在awk中,能产生bool结果的操作符是
== !=
> <
>= <=
~ !~
共8个,然后,可以使用&& 或者 || 进行连接 得到的仍然是bool结果
awk 语法
'/pattern1/{可执行语句1} /pattern2/{可执行语句2}...'
awk是一行行处理数据,对于一个文件,首先读入每一行,同时,根据定义,将每个字段$n 赋值。之后,判断是否匹配模式,如果匹配,则执行pattern后的{}中个语句
//之间是正则表达式 必须包含在//之间
值得注意的是,任何可以产生bool结果的语句都可以放在{}之前 比如 '$1=="df"{执行语句}'
这类似于if语句,同样的效果可以在{}中使用。
但是,要注意的是模式的匹配。
在{}外,是//中
在{}中的if()里面是 ""
如
awk '/sdf/{}'
等同于 awk '{if($0~"sdf")}'
awk '!/sdf/{}'
等同于 awk '{if($0!~"sdf")}'
== !=
> <
>= <=
~ !~
共8个,然后,可以使用&& 或者 || 进行连接 得到的仍然是bool结果
awk 语法
'/pattern1/{可执行语句1} /pattern2/{可执行语句2}...'
awk是一行行处理数据,对于一个文件,首先读入每一行,同时,根据定义,将每个字段$n 赋值。之后,判断是否匹配模式,如果匹配,则执行pattern后的{}中个语句
//之间是正则表达式 必须包含在//之间
值得注意的是,任何可以产生bool结果的语句都可以放在{}之前 比如 '$1=="df"{执行语句}'
这类似于if语句,同样的效果可以在{}中使用。
但是,要注意的是模式的匹配。
在{}外,是//中
在{}中的if()里面是 ""
如
awk '/sdf/{}'
等同于 awk '{if($0~"sdf")}'
awk '!/sdf/{}'
等同于 awk '{if($0!~"sdf")}'