gpt4 book ai didi

awk + ​​一行 awk 语法,如果 "true"字匹配,则第二个字段只打印一次

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

我不知道如何用 awk 做到这一点
但我的目标是创建 awk 一行语法,以便打印第二个字段($2),如果
所有第一个字段($1)都是真的

例如

我有文件:

   true my_name_is_lenon
true my_name_is_lenon
true my_name_is_lenon
false my_name_is_lenon
true my_name_is_lenon

false my_dog_is_fat
true my_dog_is_fat
true my_dog_is_fat

true I_am_very_tall
true I_am_very_tall
true I_am_very_tall

true my_ball_is_fine
true my_ball_is_fine

awk 将只打印以下内容:
 I_am_very_tall
my_ball_is_fine

因为 I_am_very_tall , my_ball_is_fine 在没有错误的第一个字段上得到真

my_dog_is_fat , my_name_is_lenon 未打印,因为第一个字段上的错误词

规则是如果第一个字段上没有假词,则打印第二个字段! (第二个字段中所有相同的句子)

利迪亚

最佳答案

这是一种方法:

awk '{if ($1 == "false") {array[$2] = $1} else if (array[$2] != "false") array[$2] = $1} END {for (i in array) if (array[i] == "true") print i}' inputfile

编辑:

这是多行:
awk '{if ($1 == "false") 
{array[$2] = $1}
else if (array[$2] != "false")
array[$2] = $1}
END {for (i in array)
if (array[i] == "true")
print i}
' inputfile

关于awk + ​​一行 awk 语法,如果 "true"字匹配,则第二个字段只打印一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3317291/

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