返回顶部
首页 > 资讯 > 精选 >awk中的使用循环是怎么样的
  • 711
分享到

awk中的使用循环是怎么样的

2023-06-05 17:06:47 711人浏览 独家记忆
摘要

awk中的使用循环是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。导读awk 脚本有三个主要部分:BEGIN 和 END 函数(都可选),用户自己写的每次要执

awk中的使用循环是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

导读awk 脚本有三个主要部分:BEGIN 和 END 函数(都可选),用户自己写的每次要执行的函数。某种程度上,awk 的主体部分就是一个循环,因为函数中的命令对每一条记录都会执行一次。然而,有时你希望对于一条记录执行多次命令,那么你就需要用到循环。

学习一下多次执行同一条命令的不同类型的循环。

awk 脚本有三个主要部分:BEGIN 和 END 函数(都可选),用户自己写的每次要执行的函数。某种程度上,awk 的主体部分就是一个循环,因为函数中的命令对每一条记录都会执行一次。然而,有时你希望对于一条记录执行多次命令,那么你就需要用到循环。

有多种类型的循环,分别适合不同的场景。

while 循环

一个 while 循环检测一个表达式,如果表达式为 true 就执行命令。当表达式变为 false 时,循环中断。

#!/bin/awk -f BEGIN {        # Loop through 1 to 10     i=1;    while (i <= 10) {        print i, " to the second power is ", i*i;        i = i+1;    }exit;}

在这个简单实例中,awk 打印了放在变量 i 中的整数值的平方。while (i <= 10) 语句告诉 awk 仅在 i 的值小于或等于 10 时才执行循环。在循环最后一次执行时(i 的值是 10),循环终止。 [yiji]do-while 循环[/yiji] do-while 循环执行在关键字 do 之后的命令。在每次循环结束时检测一个测试表达式来决定是否终止循环。仅在测试表达式返回 true 时才会重复执行命令(即还没有到终止循环的条件)。如果测试表达式返回 false,因为到了终止循环的条件所以循环被终止。

#!/usr/bin/awk -fBEGIN {         i=2;        do {                print i, " to the second power is ", i*i;                i = i + 1        }        while (i < 10) exit;}

for 循环

awk 中有两种 for 循环。

一种 for 循环初始化一个变量,检测一个测试表达式,执行变量递增,当表达式的结果为 true 时循环就会一直执行。

#!/bin/awk -f BEGIN {    for (i=1; i <= 10; i++) {        print i, " to the second power is ", i*i;    }exit;}

另一种 for 循环设置一个有连续索引数组变量,对每一个索引执行一个命令集。换句话说,它用一个数组“收集”每一条命令执行后的结果。

本例实现了一个简易版的 Unix 命令 uniq。通过把一系列字符串作为键加到数组 a 中,当相同的键再次出现时就增加键值,可以得到某个字符串出现的次数(就像 uniq 的 --count 选项)。如果你打印该数组的所有键,将会得到出现过的所有字符串。

用演示文件 colours.txt(前一篇文章中的文件)来举例:

name       color  amountapple      red    4banana     yellow 6raspberry  red    99strawberry red    3grape      purple 10apple      green  8plum       purple 2kiwi       brown  4potato     brown  9pineapple  yellow 5

这是 awk 版的简易 uniq -c:

#! /usr/bin/awk -f NR != 1 {    a[$2]++}END {    for (key in a) {                print a[key] " " key    }}

示例数据文件的第三列是第一列列出的条目的计数。你可以用一个数组和 for 循环来按颜色统计第三列的条目。

#! /usr/bin/awk -f BEGIN {    FS=" ";    OFS="\t";    print("color\tsum");}NR != 1 {    a[$2]+=$3;}END {    for (b in a) {        print b, a[b]    }}

你可以看到,在处理文件之前也需要在 BEFORE 函数(仅仅执行一次)中打印一列表头。

循环

在任何编程语言中循环都是很重要的一部分,awk 也不例外。使用循环你可以控制 awk 脚本怎样去运行,它可以统计什么信息,还有它怎么去处理你的数据。

看完上述内容,你们掌握awk中的使用循环是怎么样的的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注编程网精选频道,感谢各位的阅读!

--结束END--

本文标题: awk中的使用循环是怎么样的

本文链接: https://lsjlt.com/news/243734.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • awk中的使用循环是怎么样的
    awk中的使用循环是怎么样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。导读awk 脚本有三个主要部分:BEGIN 和 END 函数(都可选),用户自己写的每次要执...
    99+
    2023-06-05
  • 怎么在awk中使用循环
    本篇内容介绍了“怎么在awk中使用循环”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!awk 脚本有三个主要部分:BEGIN 和 END 函数...
    99+
    2023-06-16
  • 在 awk 中使用循环
    来学习一下多次执行同一条命令的不同类型的循环。 awk 脚本有三个主要部分:BEGIN 和 END 函数(都可选),用户自己写的每次要执行的函数。某种程度qzhTv上,awk 的主体部分就是一个循环,因为函数中的命令对每...
    99+
    2022-06-04
    awk循环 awk 使用循环
  • AWK中如何使用循环
    小编给大家分享一下AWK中如何使用循环,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!AWK 是一种处理文本文件的语言,是一个强大的文本分析工具,在处理文本时经常使...
    99+
    2023-06-27
  • linux的awk的使用是怎样的
    这篇文章将为大家详细讲解有关linux的awk的使用是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据...
    99+
    2023-06-06
  • shell中的for循环用法是怎样的
    shell中的for循环用法是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。这篇文章主要介绍了shell中的for循环用法详解,文中通过示例代码介绍的非常详细,对大家...
    99+
    2023-06-28
  • Linux shell中while循环是怎样的
    今天就跟大家聊聊有关Linux shell中while循环是怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在shell中while循环也是一个常用的循环结构,和其他语言的语法有...
    99+
    2023-06-28
  • JS 中的for...of 循环是怎样的
    这篇文章给大家介绍JS 中的for...of 循环是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JavaScript 中的for...of语句就是...
    99+
    2024-04-02
  • awk的操作是怎么样的
    本篇文章给大家分享的是有关awk的操作是怎么样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。awk是一种用于处理文本、模式匹配的编程语言。与sed和grep,俗称Linux下...
    99+
    2023-06-05
  • Shell编程中for循环结构是怎么样的
    小编给大家分享一下Shell编程中for循环结构是怎么样的,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!for i in {取值范围}do循环体done求取1-100数字的和、找出1-100中能被2整除的数字、找出1-10...
    99+
    2023-06-04
  • Python3中的for循环怎么使用
    本篇内容介绍了“Python3中的for循环怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一·ra...
    99+
    2024-04-02
  • 怎么使用HashMap的循环
    本篇内容介绍了“怎么使用HashMap的循环”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!先来看看每种遍历的方式:在for循环中使用entr...
    99+
    2023-06-16
  • 对Python循环对象的理解是怎么样的
    对Python循环对象的理解是怎么样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。循环对象的并不是随着Python的诞生就存在的,但它的发展迅速,特别是Python 3x...
    99+
    2023-06-02
  • JavaScript中循环之间的技术差异是怎样的
    本篇文章为大家展示了JavaScript中循环之间的技术差异是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在 JavaScript 中使用循环时,需要理解两...
    99+
    2024-04-02
  • MySQL中怎么使用WHILE循环模拟FOR循环
    在MySQL中,没有直接的FOR循环语句,但是可以使用WHILE循环来模拟一个FOR循环。可以使用一个变量来充当计数器,然后在WHI...
    99+
    2024-04-30
    MySQL
  • oracle中loop循环使用的方法是什么
    在Oracle中,可以使用PL/SQL语言编写循环控制结构,其中包括三种主要的循环语句:LOOP、WHILE和FOR。其中,LOOP...
    99+
    2024-04-09
    oracle
  • 怎么使用Java的For循环
    这篇文章主要介绍“怎么使用Java的For循环”,在日常操作中,相信很多人在怎么使用Java的For循环问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使用Java的For...
    99+
    2024-04-02
  • C#的foreach循环怎么使用
    这篇文章主要介绍“C#的foreach循环怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“C#的foreach循环怎么使用”文章能帮助大家解决问题。使用 foreach 循...
    99+
    2023-06-17
  • Linux的loop循环怎么使用
    在Linux中,可以使用`for`循环和`while`循环来实现循环的功能。1. 使用`for`循环:```shellfor var...
    99+
    2023-09-22
    Linux
  • C语言的循环小练习是怎样的
    C语言的循环小练习是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.实现n的阶乘int main(){int n =&nb...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作