awk 判断与循环语句
awk 作为一门语言,支持顺序、判断、循环三种语句。awk的这三种语句借鉴了C语言,可以控制程序的流程。
条件语句有if/esle,循环语句有for循环、while循环、do/while循环。
– if 语句
语法格式:
{
if(expression) {
statement;statement;... # statement之间以分号隔开
}
}
eg.
awk 'BEGIN{print "if"}{if($1<$2) print $2 " is big"}'/etc/passwd
-if/else 语句
语法格式:
{
if(expression){
statement;statement;...# statement之间以分号隔开
}
else{
statement;statement;...
}
}
eg.
awk 'BEGIN{print "if/else"} {if($1<$2) print $2 " is big";else print $1 " is big"}'/etc/passwd
– if/else if语句
提供条件分支语句的执行
语法格式:
{
if(expression){
statement;statement;...# statement之间以分号隔开
}
elseif(expression){
statement;statement;...
}
elseif(expression){
statement;statement;...
}
...
else{
statement;statement;...
}
}
解释:程序会从上到下依次对条件expression进行判断,一旦发现某个expression为真,立即执行紧跟的statements语句块。执行完后立刻退出整个if语句,而不去执行下面的expression判断。
如果所有的expression都无法得到满足,则执行最后一个else语句块!
循环是一种重复执行一个或多个操作的结构。
– while循环
语法: 条件表达式在循环顶进行部进行判断
while(condition){
action # 循环体
}
– do/while 循环
语法: 循环体至少被执行一次,在代码块结尾处进行判断
do{
action
}while(condition)
– for 循环
语法格式:等同于C语言的for循环
for(initial assignment;comparsion;increment ){
coode block
}
eg.
for( i =1; i <4; i++){
print "iteration",i
}
– break 和 continue
break、continue 可用于影响程序的控制流。
break 退出当前循环,不再继续执行循环体
continue 终止当前循环,从循环的顶部提前进入新的循环
注: continue 在while 和 for 循环不同之处在于,在for循环主体中使用时,continue将使循环控制变量自动增加!
Linux常用命令之awk http://www.linuxidc.com/Linux/2016-09/135046.htm
Linux系统之文本格式化工具awk http://www.linuxidc.com/Linux/2016-02/128150.htm
AWK简介及使用实例 http://www.linuxidc.com/Linux/2013-12/93519.htm
Linux awk文本分析工具 http://www.linuxidc.com/Linux/2015-12/126217.htm
Linux文本处理工具之awk http://www.linuxidc.com/Linux/2015-01/111437.htm
如何在Linux中使用awk命令 http://www.linuxidc.com/Linux/2014-10/107542.htm
文本分析工具-awk http://www.linuxidc.com/Linux/2014-12/110939.htm
AWK入门基础教程 http://www.linuxidc.com/Linux/2016-12/138138.htm
使用awk格式化输出文本 http://www.linuxidc.com/Linux/2016-04/130193.htm
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139370.htm