Использование OSX 10.8.4.Мне трудно найти полный список всех программных приложений, установленных на моем Mac. Конечно, «Launchpad» показывает только список тех, у кого создан ярлык приложения, за исключением тех, которые этого не делают. Я также попытался удерживать клавишу «Option» в меню Apple, чтобы изменить «Об этом Mac» на «Системная информация», затем «Программное обеспечение -> Установки», но это все еще не был полный список.
Как получить полный список всех установленных приложений?
Попробуй: Об этом Mac > Дополнительная информация > Системный отчет > Программное обеспечение
.
введите описание изображения здесь!
Не только «Установки» ... но другие могут дать вам некоторую информацию тоже.
Если вы просто ищете список приложений с расширением .app, запустите терминал и запустите его
find / -iname *.app > ~/applications.txt
(в конечном итоге) предоставит вам довольно полный список приложений, записанных в текстовый файл с именем «applications.txt» в вашей домашней папке.
В командной строке попробуйте system_profiler (8):
> system_profiler SPApplicationsDataType
Вот фрагмент, показывающий Safari:
Safari:
Version: 7.0.2
Obtained from: Apple
Last Modified: 2/25/14, 3:44 PM
Kind: Intel
64-Bit (Intel): Yes
Signed by: Software Signing, Apple Code Signing Certification Authority, Apple Root CA
Location: /Applications/Safari.app
Get Info String: 7.0.2, Copyright © 2003-2014 Apple Inc.
system_profiler
также может выводить в формат XML (plist (5)), который можно легко проанализировать. Для этого используйте параметр -xml
. Вот обновленный фрагмент Safari в этом формате:
<dict>
<key>_name</key>
<string>Safari</string>
<key>has64BitIntelCode</key>
<string>yes</string>
<key>info</key>
<string>10.0, Copyright © 2003-2016 Apple Inc.</string>
<key>lastModified</key>
<date>2016-06-30T22:14:21Z</date>
<key>obtained_from</key>
<string>apple</string>
<key>path</key>
<string>/Applications/Safari.app</string>
<key>runtime_environment</key>
<string>arch_x86</string>
<key>signed_by</key>
<array>
<string>Software Signing</string>
<string>Apple Code Signing Certification Authority</string>
<string>Apple Root CA</string>
</array>
<key>version</key>
<string>10.0</string>
</dict>
Эти команды перечислили те же приложения в моей установке:
mdfind kMDItemContentTypeTree=com.apple.application-bundle -onlyin /
system_profiler SPApplicationsDataType|sed -n 's/^ *Location: \(.*\)/\1/p'
Оба пропустили некоторые пакеты приложений внутри пакетов приложений и фреймворка.
lsregister
включал больше приложений в другие пакеты приложений, но также включал приложения, которые были удалены, и приложения на томе Time Machine:
`/ System / Library / Frameworks / CoreServices.framework / Versions / A / Frameworks / LaunchServices.framework / Versions / A / Support / lsregister -dump | '/ ^ bundle \ tid / {getline; sub / """); print} '
Это находит больше приложений внутри других пакетов, но не соответствует приложениям, которые не имеют расширения .app
:
sudo find -x / -type d -name \*.app
Из вопроса OP неясно, ищет ли он / она легкий ответ или жесткий ответ. Способ получить почти все приложения в удобный список будет:
Откройте Терминал
Введите ls / Applications
для простого алфавитного списка или ls -l / Applications
для получения дополнительной информации:
Ewans-Retina-MacBook-Pro: приложения ewan $ ls / приложения
& Лт;!- - >
1000 OpenType Fonts.app Garmin MapInstall.app ScreenFlow.app
1Password.app Garmin MapManager.app Sequel Pro.app
Лучший искатель Переименовать 8.app Garmin WebUpdater.app Server.app
Используя plistbuddy, вы можете получить некоторую информацию и проанализировать ее на предмет необходимых вам вещей.
Это позволит получить все установленные приложения / утилиты с номерами версий и поместить их в текстовый файл для вас.
#!/bin/sh
(
for i in /Applications/*.app
do
Printf "$i \t" | cut -c15-1000
/usr/libexec/plistbuddy -c Print:CFBundleShortVersionString: "$i"/Contents/info.plist
done
for u in /Applications/Utilities/*.app
do
Printf "$u \t" | cut -c25-1000
/usr/libexec/plistbuddy -c Print:CFBundleShortVersionString: "$u"/Contents/info.plist
done
) >${USER}Applist.txt
Откройте терминал и напишите следующую команду sudo find / -iname * .app
Это тот же ответ, что и у «binarybob», но с помощью sudo вы можете получить доступ и перечислить некоторые папки, которые вы не можете сделать без прав администратора. Ваш пароль будет запрошен, и вы получите преимущества «прав» sudo, если ваша учетная запись является учетной записью администратора.
Например, с find / -iname * .app
я получаю 430 строк, а с sudo find / -iname * .app
я получаю 432 строки. Это пример на моем компьютере, и, возможно, результат будет таким же, как и у вас.
Попробуйте запустить это в Терминале (/ Applications / Utilities / Terminal.app):
mdfind "kMDItemContentType == 'com.apple.application-bundle'" -onlyin $scope
# $scope is your search range
# this command will only search all the applications under the given scope if -onlyin is specified
Это поисковый запрос, который ищет элементы с заданным предикатом метаданных kMDItemContentType == "com.apple.application-bundle"
, он предоставит вам полный список всех пакетов приложений (.app
) в заданном объеме, или если -onlyin
не указан, будет использоваться глобальный масштаб (включая внешние / сетевые диски).
Я знаю, что вопрос был задан 4 года назад, было дано несколько ответов, каждый пытается решить проблему по-разному (через графический интерфейс или 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
Читает ввод из стандартного ввода и открывает результаты в текстовом редакторе по умолчанию.Наконец, комбинация обоих списков склеена с & &
, который позволяет выполнять несколько команд одновременно, поэтому, наконец, мы получаем команду терминала «одна строка».
Надеюсь, что это поможет и дает подробное объяснение.
Используйте «Слушай мои приложения». Это небольшое приложение показывает все приложения из iTunes AppStore. https://itunes.apple.com/us/app/list-my-apps/id756968964?l = de & ls = 1 & mt = 12
Перейти к FINDER
Нажмите ПРИМЕНЕНИЕ