Я пытаюсь получить шаблон регулярных выражений ("^ [\ w + [0-9] {5,6}] $") после вывода одной строки (пример [abc_testing_12345]).
Он работает нормально, когда я выполняю его в командной строке, определяя две переменные, input и pattern
Но когда я использую то же самое в цикле while и получаю значение ввода из файла, это не работает.
Я видел несколько тем в Интернете и пытался использовать параметры, но это не сработало.
Пример рабочего кода:
pattern="^\[\w+[0-9]{5,6}\]$"
input="[abc_testing_12345]"
echo "$input" | egrep -c "$pattern
печатает значение 1
но когда я заполняю переменную 'input' из файла и затем пытаюсь выполнить grep, она не печатает значение 1
Пример кода:
pattern="^\[\w+[0-9]{5,6}\]$"
cat inputFile | grep "\[" | while read line
do
echo "$line" | egrep -c "$pattern"
done
результат этого кода 0
Пожалуйста, помогите мне решить эту проблему.
Заранее спасибо.