Я знаю, что вопрос задавался 4 года назад, было дано несколько ответов, каждый пытается решить проблему по-своему (через GUI или CLI), но ни один из них не является полным.
Вчера в моей компании каждого пользователя macOS попросили предоставить:
список всех приложений, установленных в их системах OS X / macOS для аудита программного обеспечения
Чтобы процесс был последовательным, простым и завершенным, все выполняли одну и ту же команду в терминале.
ls -l /Applications | open -ef && ls -l /usr/local/bin | open -ef
Приведенная выше команда открывает 2 файла в текстовом редакторе по умолчанию со списком всех установленных приложений, а также списком всех « исполняемых файлов », которые также следует рассматривать как приложения.
Я думаю, что это обеспечивает наиболее полное решение для данной проблемы. Это быстро и делает работу.
Чтобы дать более подробный ответ, давайте, наконец, пройдемся по всем командам и аргументам, чтобы все было понятно тем, кто напуган использованием терминала.
Команда ls
просто перечисляет содержимое каталога. В этом случае, /Applications
а также /usr/local/bin
- это место предназначено для программ, которые может запускать обычный пользователь.
Аргумент -l
отображает список в «длинном формате». Подробнее о «длинном формате» можно узнать здесь .
Далее у нас есть символ трубы |
. Он разделяет две программы в командной строке, чтобы перечисленные выходные данные можно было открыть в другой программе. В этом случае используется open
команда.
Команда open
просто открывает файлы и каталоги, но в сочетании с -ef
:
-e
Вызывает открытие файла /Applications/TextEdit
-f
Считывает ввод из стандартного ввода и открывает результаты в текстовом редакторе по умолчанию.
Наконец, комбинация обоих списков склеена, &&
что позволяет выполнять несколько команд одновременно, так что в итоге мы получим команду терминала «одна строка».
Надеюсь, что это помогает и дает подробное объяснение.