1|1001|399.00|123
1|1001|29.99|234
2|1002|98.00|345
2|1002|29.98|456
3|1003|399.00|567
4|1004|234.56|456
我如何使用 awk 获取第 2 列中带有“1002”的所有行?
如果我想抓取第一列中带有'2'的所有行,我可以使用grep ^2,但我如何按不同的列进行搜索?
最佳答案
典型的解决方案是:
awk '$2 == 1002' FS=\| input-file
你得到的结果略有不同:
$2 ~ 1002
,技术上可以满足您的查询,但可能不是您想要的。 (它执行正则表达式匹配,因此如果第二列是“341002994”,则匹配)。
关于bash - 如何使用AWK按某列抓取文件中的一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15173042/