AWK 基本语法
AWK使用起来很简单。我们可以通过命令行直接提供AWK命令,也可以使用包含AWK命令的文本文件。
AWK命令行
我们可以在命令行中使用单引号指定AWK命令,如下所示-
示例
考虑一个名为marks.txt的文本文件,其内容如下-
让我们使用AWK来显示文件的完整内容,如下所示:
示例
执行此代码后,您会得到以下结果−
输出
AWK程序文件
我们可以将AWK命令提供在一个脚本文件中,如下所示:
首先,创建一个文本文件 command.awk ,其中包含以下所示的AWK命令 −
现在我们可以让AWK从文本文件中读取命令并执行操作。在这个示例中,我们实现了与上面的示例相同的结果。
示例
执行此代码时,您将获得以下结果 –
输出
AWK标准选项
AWK支持以下标准选项,可以从命令行提供。
-v选项
该选项将一个值赋给一个变量。它允许在程序执行之前进行赋值。以下示例描述了-v选项的用法。
示例
在执行这段代码时,你会得到以下结果−
输出
--dump-variables [ = file ] 选项
它将全局变量及其最终值按顺序打印到文件中。默认文件为 awkvars.out 。
示例
在执行上述代码时,你会得到以下结果 –
输出
--help 选项
此选项将在标准输出中打印帮助信息。
示例
执行此代码后,您将获得以下结果:
输出
--lint[=fatal] 选项
此选项启用对非可移植或可疑结构的检查。当提供参数 fatal 时,将把警告消息视为错误。以下示例演示了该选项的使用:
示例
执行此代码时,您会得到以下结果−
输出
--posix 选项
此选项打开严格的 POSIX 兼容性,禁用所有常见和 gawk 特定的扩展。
--profile[=file] 选项
此选项在文件中生成程序的美观打印版本。默认文件是 awkprof.out 。下面的简单示例说明了这一点。
示例
执行这段代码后,你会得到以下结果:
输出
--traditional 选项
该选项禁用所有 gawk 特有的扩展功能。
--version 选项
该选项显示 AWK 程序的版本信息。
示例
当执行这段代码时,会产生以下结果-
输出