Сохранение результата кошки в виде разных значений индекса

Я проанализировал файл, используя cat и теперь я хочу сохранить его результат в массиве.

 var1=$(cat abc.txt | grep .........) 

и var1 выглядит

  • bash, объединяющее расширение подстановочных знаков с расширением брекета
  • Debian Wheezy 7.1 - невозможно запустить Skype или Firefox
  • Как я могу изменить приглашение bash, чтобы показать мой рабочий каталог?
  • Разница между переменной окружения и переменной оболочки
  • cd к предыдущим каталогам
  • Конфигурация режима Bash vi по умолчанию в режиме команд
  •  33 23 51 11 16 43 5 50 4 2 12 29 32 28 47 41 7 20 38 45 49 26 22 10 44 9 19 27 46 

    1. Я хочу, чтобы каждое значение сохранялось как переменные массива, но когда я делаю это, весь результат « cat хранится в индексе 0 из var1

    Как сохранить каждое значение в качестве другого индекса?

  • Сравнить деревья каталогов относительно имени файла (и размера и даты)
  • Автозаполнение имени файла в каталоге
  • Использование xargs с git
  • Как назначить результат sed переменной
  • Стратегия для извлечения имени фильма из этого неравномерного набора данных?
  • неожиданный EOF при поиске соответствия `) '
  • One Solution collect form web for “Сохранение результата кошки в виде разных значений индекса”

    В bash встроенный readarray может хранить значения в массивах:

     readarray arr < <(grep "pattern" abc.txt) 

    Это создаст массив с именем arr с значениями, указанными командой grep "pattern" abc.txt (если они входят в несколько строк, readarray добавляет их в массив):

     echo ${arr[0]} 33 $ echo ${arr[10]} 12 $ echo ${arr[*]} 33 23 51 11 16 43 5 50 4 2 12 29 32 28 47 41 7 20 38 45 49 26 22 10 44 9 19 27 46 

    BTW: cat file | grep ... cat file | grep ... может быть сокращен до grep ... file , grep также может читать файлы.

    Linux и Unix - лучшая ОС в мире.