gpt4 book ai didi

unix - 尾随数字对 awk 脚本的正文有什么影响?

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

我有一个简单的 awk one liner,当给定模式匹配时,它会将下一行折叠到当前行上。这里是:

awk '/two/ { printf $1; next; } 1' test.txt 

具有以下输入:
one
two
three
four
five
six

one
two
three
four

你得到:
one
twothree
four
five
six

one
twothree
four

请注意,“三”与我想要发生的“二”折叠在一起。我找到了这个解决方案(不记得在哪里),并认为尾随的“1”似乎是导致预期效果的缺失部分,这很奇怪。如果你拿出来,你会得到:
awk '/two/ { printf $1; next; }' test.txt 
twotwo

作为结果。所以我的问题是,尾随的“1”有什么作用,它在哪里记录?

谢谢!

最佳答案

对于 awk , 1 表示为真,当表达式为真时,awk默认打印当前行。

例子 :

  • awk '1' /etc/passwd将打印整个文件
  • awk '0' /etc/passwd不是 打印整个文件

  • 如果你擅长算术(或者你有想象力或编程技能),你可以用这种行为做很多技巧。

    关于unix - 尾随数字对 awk 脚本的正文有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13038625/

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