美文网首页
24 - awk流程控制

24 - awk流程控制

作者: 舍是境界 | 来源:发表于2022-04-04 07:34 被阅读0次

if语句

  • 单分支if判断

awk '指令' 文件

$ awk -F: '{if($3>=1000){i++}} END{print i}' /etc/passwd
1

$ awk -F: '{if($1=="root"){i++}} END{print i}' /etc/passwd
1

$ uptime | awk '{if($NF>0.01){print "CPUload:"$NF}}'
CPUload:0.35
  • 双分支if判断
    • awk '{指令}' 文件
$ awk -F: '{if($3>=1000){i++}else{j++}} END{print "普通用户:"i,"系统用户:"j}' /etc/passwd
普通用户:1 系统用户:18

$ ls -l /etc | awk '{if($1~/^-/){x++} else {y++}}END {print "普通文件个数:"x,"目录个数:"y}'
普通文件个数:83 目录个数:91

$ ls -l /etc | awk '{if($1~/^-/){x++}else if($1~/^d/){y++}else{z++}} END{print "普通文件个数:"x,"目录个数:"y,"其他个数:"z}'
普通文件个数:83 目录个数:74 其他个数:17

for循环

  • awk的for循环采用与C语言一样的语法格式
    • for(表达式1;表达式2;表达式3){指令}
$ awk 'BEGIN {for (i=1;i<=5;i++){print i}}'
1
2
3
4
5

$ awk 'BEGIN {for (i=5;i>=1;i--){print i}}'
5
4
3
2
1

小结

  • 单分支:if(条件){指令}
  • 双分支:if(条件){指令}else{指令}
  • 多分支:if(条件){指令}else if(条件){指令}... ...else{指令}
  • for循环:for(表达式1;表达式2;表达式3){指令}

相关文章

  • 24 - awk流程控制

    if语句 单分支if判断 awk '指令' 文件 双分支if判断awk '{指令}' 文件 for循环 awk的f...

  • Linux Shell Awk 流程控制语句详细介绍

    Linux Shell Awk 流程控制语句详细介绍 在linux awk的 while、do-while和for...

  • Linux awk命令详解

    Linux awk命令详解 使用方法 调用awk 入门实例 1. 显示最近登录的5个帐号 awk工作流程是这样的:...

  • AWK命令

    AWK工作流程 1.只有action时候,awk工作流程是这样的:读入有'\n'换行符分割的一条记录,然后将记录按...

  • awk的介绍和使用

    1 awk的介绍 2 awk 的变量 需要使用 -v 指定 3 控制语句 4 数组 5 内置函数

  • 3d-dna软件提速(一)edit-fasta-accordin

    在3d-dna流程中,凡是涉及到edit-fasta-according-to-new-cprops.awk的流程...

  • AWK行处理的用法实例

    第一节 awk的工作流程及基础用法 awk操作符会先检索文件的行信息,然后在行信息里找需要的内容。Awk的默认分...

  • 5-流程控制

    流程控制 流程 计算机执行代码的顺序就是流程 流程控制 对计算机代码执行顺序的管理就是流程控制 流程分类 流程控制...

  • 04-流程控制及while循环

    流程控制 流程: 计算机执行代码的顺序,就是流程。 流程控制: 对计算机代码执行顺序的控制,就是流程控制。 流程分...

  • AWK连续截取多列字符串

    cat chr.list|awk -F "" '{for(i=14;i<=24;i++) {printf $i} ...

网友评论

      本文标题:24 - awk流程控制

      本文链接:https://www.haomeiwen.com/subject/tuxjjrtx.html