grep съедает переводы строк

May 10, 2019 13:25


очередная записка «не забыть».

делаю некий парсер.

он ищет в файле строки по совпадению.

чисто в консоли - все гут:

grep 123456 file.txt

получаю нормальный МНОГОСТРОЧНЫЙ результат:

123456; abc;

123456; def;

но когда в коде делаю

var=$(grep 123456 file.txt)

и потом вывожу эту переменную, то получается

123456; abc; 123456; def;

то есть, съедаются переводы строки

как оказалось, ничего не съедается:

если выводить переменную как

echo $var

то переменная выводится путем перечисления (foreach) всех её элементов через IFS (по-умолчанию, пробел).

а если как

echo "$var"

то содержимое не анализируется и выводится «как сохранено».

это же работает и в других местах, кроме echo

Previous post Next post
Up