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,但如何使用不同的列进行搜索?
答案 0 :(得分:6)
典型的解决方案是:
awk '$2 == 1002' FS=\| input-file
你得到的结果略有不同:
$2 ~ 1002
,它在技术上满足您的查询,但可能不是您想要的。 (它执行正则表达式匹配,因此如果第二列是“341002994”,则匹配。)