Awk 选择特定字段并同时需要一个变量

Awk 选择特定字段并同时需要一个变量

我正在尝试编写一个 awk 脚本,该脚本将获取一个文件,然后获取一个单词,然后如果第一个字段包含该单词,则仅输出第一个和第三个字段,到目前为止,我最接近的是

#!/usr/bin/awk -f 

print $3,$1~/chevy/

但是这会输出所有两行,然后如果它们中包含单词,则在末尾放置 0 或 1。

答案1

awk 程序总是由模式-动作对组成。在你的例子中,{print $1,$3}当记录与模式匹配时,你想要执行操作$1~/chevy/。因此

#!/usr/bin/awk -f 

$1~/chevy/ {print $1,$3}

相关内容