Linux之awk条件语句和循环语句(五)

1.条件语句

1.1 IF 语句

IF 条件语句语法格式如下:

if (condition)
    action 

或者使用花括号:

if (condition)
{
    action-1
    action-1
    .
    .
    action-n
}

1.1.1 IF语句实例

[root@ecs-76840553 ~]#  awk 'BEGIN {num = 10; if (num % 2 == 0) printf "%d 是偶数\n", num}'
10 是偶数
[root@ecs-76840553 ~]#  awk 'BEGIN {num = 10; if (num % 2 == 0){ printf "%d 是偶数\n", num}}'
10 是偶数
[root@ecs-76840553 ~]#

1.2 IF-ELSE语句

1.2.1 IF-ELSE语法格式

if (condition)
    action-1
else
    action-2

1.2.1.1 IF-ELSE 实例

[root@ecs-76840553 ~]#  awk 'BEGIN {num = 3; if (num % 2 == 0) {printf "%d 是偶数\n", num }else{printf "%d 是奇数\n", num}}'
3 是奇数
[root@ecs-76840553 ~]# 

1.3 IF-ELSE IF语句

多个 IF - ELSE 格式的判断语句来实现多个条件的判断

1.3.1 实例

[root@ecs-76840553 ~]# awk 'BEGIN{num=10;if(num>10){print "num大于10"}else if(num<10){print "num小于10"}else if(num==10){print "num等于10"}}'
num等于10
[root@ecs-76840553 ~]# 

 2.循环语句

2.1 for语句

2.1.1 for 循环语句语法

for (initialisation; condition; increment/decrement)
    action

for 语句首先执行初始化动作( initialisation ),然后再检查条件( condition )。如果条件为真,则执行动作( action ),然后执行递增( increment )或者递减( decrement )操作。只要条件为 true 循环就会一直执行。每次循环结束都会进条件检查,若条件为 false 则结束循环。

2.1.2 for 循环实例

[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i}}'
1
2
3
4
5
[root@ecs-76840553 ~]#

 2.2 while 循环语句

2.2.1 while 循环语法

while (condition)
    action

While 循环首先检查条件 condition 是否为 true ,若条件为 true 则执行动作 action。此过程一直重复直到条件 condition 为 flase 才停止。

2.2.2 while 实例

[root@ecs-76840553 ~]# awk 'BEGIN{i=10;while(i>5){print i;i--}}'
10
9
8
7
6
[root@ecs-76840553 ~]#

2.3 break 语句

break用于结束循环语句

2.3.1 break 语句实例

[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i}}'
1
2
3
4
5
[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i;if(i==3)break;}}'
1
2
3
[root@ecs-76840553 ~]# 

2.4 continue 语句

Continue 语句用于在循环体内部结束本次循环,从而直接进入下一次循环迭代。

2.4.1 continue 语句实例

[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i;print i}}'
1
1
2
2
3
3
4
4
5
5
[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i;if(i==3)continue;print i}}'
1
1
2
2
3
4
4
5
5
[root@ecs-76840553 ~]# 

2.5 exit 语句

Exit 用于结束脚本程序的执行。

该函数接受一个整数作为参数表示 AWK 进程结束状态。 如果没有提供该参数,其默认状态为 0。

2.5.1 exit语句实例

[root@ecs-76840553 ~]# awk 'BEGIN{for(i=1;i<=5;i++){print i;if(i==3)exit(22);print i}}'
1
1
2
2
3
[root@ecs-76840553 ~]# echo $?
22
[root@ecs-76840553 ~]# 

 

posted @ 2022-08-31 09:03  家乐福的搬砖日常  阅读(113)  评论(0编辑  收藏  举报