Сохранение вывода команды поиска в переменную

Я пытаюсь сохранить результаты поиска в переменную следующим образом:

a=find /Users/Downloads/DTI_allsites/subprojects/*/UII_0077 -name "dti_preprocessed" -type d 

Но я продолжаю получать следующее сообщение:

-bash:

/ Пользователи / Загрузки / DTI_allsites / подпроекты / UII_B / UII_0077: это каталог

всякий раз, когда я пытаюсь использовать команду, вывести путь, используя: echo $a

Я ничего не сохраняю в переменной. Как я могу это исправить?

One Solution collect form web for “Сохранение вывода команды поиска в переменную”

Так как find возвращает список путей к файлам, вам нужно использовать переменную массива. Поскольку путь к файлу может содержать любой символ, кроме NUL, вы должны использовать -print0 и разделить результат на NUL.

С bash4.4 +:

 readarray -td '' list < <(find ... -print0) so-something-with "${list[@]}" 
  • Пакетное переименование папок со значением из значения json в package.json
  • Линукс VT поддерживает 8 цветов, но в действительности существует 16 районных. Почему так?
  • Ни одна команда не работает в VMWare с Linux
  • Заставить пользователя создать 775 папок разрешений
  • Добавьте что-нибудь в конце каждой набранной команды
  • Цвета в терминале и VIM с подсистемой Windows
  • grep для диапазона IP?
  • Control + C не останавливает какие-либо процессы в Linux. Он просто отображает текст ^ C и ничего не делает
  • Как добавить больше директорий в PATH
  • Linux и Unix - лучшая ОС в мире.