Подводные камни в Bash №7
Продолжаем делать правильно.
Этот код выглядит вполне нормально:
Он считает, сколько строк в файле bar.txt
содержат слово foo
.
Здесь главная проблема — переменная count
не изменится вне цикла while
, потому что в Bash каждая команда в пайплайне (|
) запускается в отдельной оболочке (subshell). То есть count++
происходит «внутри», и снаружи этого не видно.