Я пытаюсь извлечь строку из файла без использования цикла.
myFile.txt
val1;a;b;c
val2;b;d;e
val3;c;r;f
Я хочу получить строку, в которойвторой столбец - b
.
Если я сделаю grep "b" myFile.txt
, то будет выведена первая и вторая строки.
Если я сделаю cat myFile.txt | cut -d ';' -f2 | grep "b"
, тогда результат будет просто b
тогда как я хотел бы получить полную строку val2;b;d;e
.
Есть ли способ достичь желаемых результатов без использования цикла, как показано ниже?Мой файл огромен, и было бы неплохо повторять его снова и снова.
while read line; do
if [ `echo $line | cut -d ';' -f2` = "b" ]; then
echo $line
fi
done < myFile.txt