awk既然是一门解释型语言,则就可以支持如分支语句、循环语句等。今天就来学习一下在awk中的分支和循环语句。如果您有过任何一门编程语言的基础,则下面所讲内容也是很好理解的。
分支语句
if-else
awk分支语句的基本用法如下所示:
if(condition)
{
action 1;
action 2;
...
}
或
if(condition)
{
action 1;
action 2;
...
}
else
{
action 1;
action 2;
...
}
或
if(condition)
{
action 1;
action 2;
...
}
else if
{
action 1;
action 2;
...
}
else
{
action 1;
action 2;
...
}
if-else用法示例
三元运算符
三元运算基本语法如下所示:
condition ? resultifTrue:resultifFalse
三元运算用法示例
循环语句
while语句
while基本语法如下所示:
while(condition)
{
action 1;
action 2;
...
}
while用法示例
do-while语句
do-while基本语法如下所示:
do
{
action
}while(condition)
do-while用法示例
for语句
for基本语法如下所示:
for(变量初始值;结束条件;操作符)
{
action
}
或
for(变量 in 数组)
{
action
}
for用法示例
中断语句
跟任何一门编程语言一样,awk同样也有自己的中断语句,可使用break、continue、exit和next等。
- break:结束循环,后续不管是否满足条件都不在执行
- continue:结束本次循环,后面的满足条件的循环依然继续
- exit:停止执行awk命令,不再执行awk命令
- next:不处理当前行,直接处理下一行,类似于continue
next与continue的主要区别为continue用于循环语句中,而next则是用在逐行处理中的。