gpt4 book ai didi

unix - NF > 0 在 UNIX 编程环境中检查了两次

转载 作者:行者123 更新时间:2023-12-04 18:17:29 24 4
gpt4 key购买 nike

我正在阅读 The UNIX Programming Environment 和第 4.4 节,关于 awk,有这个示例代码:

    awk '
FILENAME != prevfile { # new file
NR = 1 # reset line number
prevfile = FILENAME
}
NF > 0 {
if ($1 == lastword)
printf "double %s, file %s, line %d\n",$1,FILENAME,NR
for (i = 2; i <= NF; i++)
if ($i == $(i-1))
printf "double %s, file %s, line %d\n",$i,FILENAME,NR
if (NF > 0)
lastword = $NF
}' $*

为什么在已经有 NF > 0 作为模式的 block 内测试 NF > 0?

最佳答案

包含在 errata本书注意事项:

Page 121, first program: test "if (NF > 0)" is unnecessary.

所以这是出版商和/或文案编辑犯的错误。

关于unix - NF > 0 在 UNIX 编程环境中检查了两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11375210/

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