LINUX.ORG.RU

История изменений

Исправление bryak, (текущая версия) :

Чем это

if ! grep -q "${str}" "${file}"; then
   return 2
fi

принципиально от этого отличается?

local status=0
grep -q "${str}" "${file}" || status=$?
if (( $status > 1 )); then
   return 2
fi

По-моему наличием локальной переменной

И становится видно, что такая функция вообще нафиг не нужна — проще вызвать греп напрямую.

Эту функцию вызывают много функций, а не одна. К тому же ты видел, что функция обрабатывает не только обычные строки, а уже и многострочные строки. Лепить это в вызывающие функции - не очень хороший подход

Исходная версия bryak, :

Чем это

if ! grep -q "${str}" "${file}"; then
   return 2
fi

принципиально от этого отличается?

local status=0
grep -q "${str}" "${file}" || status=$?
if (( $status > 1 )); then
   return 2
fi

По-моему наличием локальной переменной