gpt4 book ai didi

awk - 可以从哪里开始使用简单的 AWK 示例?

转载 作者:行者123 更新时间:2023-12-04 14:37:37 25 4
gpt4 key购买 nike

我的所有代码都失败了。他们应该分别打印“he”、“hello”和“5\n 3”:

awk -v e='he' {print $e}       // not working, why?
awk NF { print hello }
awk { print ARGV[5,3] }

有没有关于AWK的简单例子?

最佳答案

首先,基本的 shell 脚本完整性:

  • 始终将您的脚本用单引号引起来

请注意,该脚本是单个参数 - 或带有“-f file”的文件名'.

awk 脚本是 ' <pattern> <action> 的序列' 对。该操作包含在大括号 '{} 中' 再次为了清晰 - 和理智。

正如Pax所说,第一个例子应该是:

awk -v -e e='he' '{ print e }'

第二个例子是高深莫测的——你的意思可能是:

awk '{ print "hello" }'

变量 NF 是该行的字段数。你可能会 awk 来解释

awk 'NF { print "hello" }'

如果输入行上有任何数据(NF != 0,或字段数不为零),则打印'hello'。

最后一个例子同样令人费解; ARGV 是“awk”的参数数组,命令行没有提供。但它是一个一维数组。您的下标表示法希望将其视为 Python 字典或 Perl 散列,并结合了两个索引。你没问题 - awk 支持关联数组;但是由于您没有向 ARGV[5,2] 处的数组添加任何内容,因此它不会打印任何内容。

关于awk - 可以从哪里开始使用简单的 AWK 示例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/522656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com