我正在处理一个bash脚本,该脚本从名为carslist.txt
的文本文件中提取数据,每个汽车(及其相应的特征)位于不同的行上。我已经能够在文本文件满足单一条件后(例如下面)从文本文件中提取和保存数据,但我无法弄清楚如何在两个条件下执行此操作。
单一条件示例:
grep 'Vauxhall' $CARFILE > output/Vauxhall_Cars.txt
输出:
Vauxhall:Vectra:1999:White:2
Vauxhall:Corsa:1999:White:5
Vauxhall:Cavalier:1995:White:2
Vauxhall:Nova:1994:Black:8
从上面的例子中,如果我想在提取条件之前满足条件Vauxhall
和White
,我将如何提取数据?
上面的grep示例要求在提取和保存数据之前满足Vauxhall
,但我不知道如何为2执行此操作。我已尝试将命令流水线化为{{1}但在那之后我没有想法。
提前致谢。
答案 0 :(得分:3)
我建议使用awk
,如下所示:
awk -F: '$1=="Vauxhall" && $4=="White"' input.file
由于我使用:
作为字段分隔符,我只需要检查字段1和4的值。