gpt4 book ai didi

awk - 为什么 awk 中的 "1"打印当前行?

转载 作者:行者123 更新时间:2023-12-03 08:56:34 26 4
gpt4 key购买 nike

this answer ,

awk '$2=="no"{$3="N/A"}1' file

被接受了。请注意 1在 AWK 脚本的末尾。在评论中,答案的作者说

[1 is] a cryptic way to display the current line.



我很困惑。这是如何运作的?

最佳答案

awk ,

1总是评估为真,它执行默认操作 {print $0} ,因此打印存储在 $0 中的当前行

所以,awk '$2=="no"{$3="N/A"}1' file相当于和简写

awk '$2=="no"{$3="N/A"} {print $0}' file

再次 $0是打印的默认参数,所以你也可以写
awk '$2=="no"{$3="N/A"} {print}' file

事实上,您还可以使用任何非零数字或任何始终评估为真的条件来代替 1

关于awk - 为什么 awk 中的 "1"打印当前行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20262869/

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