满足两个条件后从文本文件中提取数据

Extracting data from text file after 2 conditions have been met

我目前正在编写一个 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

从上面的例子中,如果我想在提取数据之前满足VauxhallWhite条件,我该如何提取数据?

上面的 grep 示例要求在提取和保存数据之前满足 Vauxhall,但我不知道如何为 2 执行此操作。我已尝试将命令流水线化为 Vauxhall | White 但后来我就没脑子了

提前致谢。

我建议使用 awk,像这样:

awk -F: '=="Vauxhall" && =="White"' input.file

因为我使用 : 作为字段分隔符,所以我只需要检查字段 1 和 4 的值。