Задать вопрос
castomi
@castomi
Серверный администратор - tickets.settin.ru

Как подать переменную на вход цикла?

Есть переменная, в ней вот такого плана строки
детский 
с аккумулятором

А именно, есть строка в одно слово, есть с пробелом. Мне необходимо обработать переменную построчно. Если обрабатываю через for, то он разбивает строки на слова и обрабатывает слова поштучно в цикле. Знаю что есть вот такой вариант цикла
while read line
do
...
done <file

То есть я могу записать свою переменную в файл и обработать таким образом, но мне интересно, а могу ли я обработать так сразу переменную?
  • Вопрос задан
  • 96 просмотров
Подписаться 1 Средний 8 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Нетология
    Системный администратор
    11 месяцев
    Далее
  • Skillfactory
    Профессия «Белый» хакер
    13 месяцев
    Далее
Решения вопроса 1
a='a a a
b b b
c c c'

# вариант 1
echo "$a" | while read x; do
   echo "---$x---"
done

# вариант 2
while read x; do
   echo "---$x---"
done < <(echo "$a")
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
xotkot
@xotkot
хорошо есть и хорошо весьма
line='детский
с аккумулятором'

IFS=$'\n'
for i in $line; do
	echo "$i"
	echo "---------"
done
unset IFS

детский
---------
с аккумулятором
---------
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы