AWK

编辑
本词条由“匿名用户” 建档。

AWK是一种用于处理和评估任何文本数据的编程语言,例如还有CSV文件。关联的解释器更像是一个编译器,因为程序文本首先被完全编译然后执行。AWK主要设计为报告生成器,是最早出现在Unix版本3中的工具之一。AWK可以看作是流编辑器sed的演变或扩展,共享某些语法元素,例如正则表达式。然而,与sed相比,AWK中提供了类似C的结构(if..then..else、各种循环、C格式......),这允许更...

AWK 是一种用于处理和评估任何文本数据编程语言,例如 还有 CSV 文件。 关联的解释器更像是一个编译器,因为程序文本首先被完全编译然后执行。 AWK 主要设计为报告生成器,是最早出现在 Unix 版本 3 中的工具之一。 AWK 可以看作是流编辑器 sed 的演变或扩展,共享某些语法元素,例如正则表达式。 然而,与 sed 相比,AWK 中提供了类似 C 的结构(if .. then .. else、各种循环、C 格式......),这允许更简单的程序结构。 在最小应用程序中,AWK 用于 shell 脚本,例如将文件名放在一起作为过滤器。 使用更详细的程序,可以编辑、重塑或评估文本文件。 除了通常的字符串函数外,还提供基本的数学函数。

现在几乎每个类 Unix 系统中都可以找到 AWK 的一个版本,并且通常是预装的。 类似的程序也可用于几乎所有其他操作系统

该语言几乎只适用于数据类型字符串。 此外,关联数组(即用字符串索引的数组,也称为散列)和正则表达式是该语言的基本部分。

AWK 和 sed 脚本的强大、紧凑以及局限性启发了 Larry Wall 开发 Perl 语言。

程序结构

编辑

AWK 程序的典型执行包括对输入文本执行操作(例如替换)。 为此,逐行阅读文本并使用选定的分隔符将文本分成多个字段——通常是一系列空格和/或制表符。 然后将 AWK 指令应用于相应的行。

AWK 指令具有以下结构:

条件{语句块}

判断读取的行是否满足条件(通常是正则表达式)。 如果满足条件,则执行花括号括起来的语句块中的代码

AWK

变量和函数

编辑

用户可以通过引用在语句块中定义变量,不需要显式声明。 变量的范围是全局的。 一个例外是函数参数,其有效性仅限于定义它们的函数。

函数可以在任何地方定义,xxx次使用前不必声明。 如果涉及标量,则函数参数作为值参数传递,否则作为引用参数传递。 调用函数时的参数不必与函数定义相对应,多余的参数被视为局部变量,省略的参数提供特殊值未初始化 - 数字零和空字符串的值作为字符串。

各种函数和变量使用相同的命名空间,因此以相同的方式命名它们会导致未定义的行为。

命令

编辑

AWK 的语法类似于 C 编程语言,基本命令是对变量的赋值、变量之间的比较和循环或条件命令执行(if-else)。 也有对xxx实施和自编程功能的调用。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/371988/

(3)
词条目录
  1. AWK
  2. 程序结构
  3. 变量和函数
  4. 命令

轻触这里

关闭目录

目录