Вы здесь

Выбор последовательных строк башем...

Есть файл (снимок инет-страницы)
В нем:
строка
строка
Параметр: Еда
Значение: Водка
строка
строка

Виртуозы bash'a, подскажите, пожалуйста, как разобрать этот файл, чтобы при обнаружении слова Параметр вытаскивать следующую строку с целью запустить программу вроде echo $parameter $value?

#!/bin/sh
echo `
        gawk '/Параметр/ {print $2;print " - " }' h ;
        gawk '/Значение/ {print $2}' h ;
     `

С учетом того, что "параметр" и "зничение" на разных строках выдает "Еда - Водка"

Спасибо, только я немного недосказал, у меня несколько таких пар. И получается, что
Еда-Еда-Еда-Еда-Водка-Водка-Водка... В этом-то и сложность была

Не ткнете в цикл перебора строк? Как его осуществить?
Строки строго попарно, поэтому алгоритм простой, перебираем строки, при появлении параметра запоминаем его, при появлении значения - выводим запомненное и значение.

gawk '  /Параметр/ { a=$2 };
        /Значение/ { b=$2 };
        END { print(a,":",b) }
     ' file ;

К сожалению, берет только последнюю пару :(

Выводит все варианты "Параметр - Значение", даже если они в одной строке, но последовательно. Затем можно делать уже выбор по результату.

gawk '  { for (i=1;i<=NF;i++ ) {
                        if ($i=="Параметр:") param=$(i+1);
                        if ($i=="Значение:") { val=$(i+1); res[param]=val }
                                }
             }
        END { for (i in res) print (i,"-",res[i]) }
' h ;

Мне кажется если потратить 20 минут на ссылки что я дал процесс пойдет эм... быстрее во всяком случае.