Убедитесь, что l oop не выходит из первой строки без совпадения.
От grep Man
ВЫХОДНОЙ СТАТУС
Normally the exit status is 0 if a line is selected, 1 if no lines were selected, and 2 if
an error occurred. However, if the -q or --quiet or --silent is used and a line is
selected, the exit status is 0 even if an error occurred.
Для выхода из вас есть несколько способов go:
- Использовать подоболочку с $ (grep ...)
- , использовать флаг + e
while IFS= read -r LINE; do
set +x # don't exit if exit code is different from 0
grep --include=\requests-definition.const.ts -rnwH $DIR -e "$LINE";
set -e # exit if exit code is different from 0
echo $LINE;
done < key_list