Wylicz wszystkie zainstalowane aplikacje w systemie OS X

Podstawowy problem

Szukam rozwiązania do wyliczenia wszystkich aplikacji zainstalowanych w systemie (Mac) OS X, tj. Wszystkich pakietów aplikacji zarejestrowanych za pomocąUsługi uruchamiania.

Proste podejście, które nie zadziałało

(Proszę zanotować:lsregister można znaleźć pod/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister).

Obecnie używam wyjścialsregister -dump | grep -E '^.*[ \\t]*path:[ \\t]+(\/.*)$' | grep -Eo '\/.*', który ma kilka problemów:

.app pakiety z nowymi znakami (\n, która jest poprawna w systemie UNIX), nie są obsługiwane poprawnie (ten problem można naprawić, pisząc odpowiedni parser)

lsregister nie obsługuje poprawnie dziwnej nazwy pliku (np. zawierającej znakZnak RTL).lsregister po prostu wydaje się ignorować pliki ze znakiem RTL w ich nazwie. Jeśli chcesz, możesz utworzyć plik z RTL w jego nazwie, uruchamiając następujące polecenie.

python -c 'import shutil; shutil.copytree(u"/Applications/TextEdit.app", u"/Applications/ThisIsAWeird\u202EApp.app")'

Po wykonaniu tegolsregister -dump | grep ThisIsAWeird będzienie ujawnij to. Ale gdy klikniesz prawym przyciskiem myszy na plik tekstowy i przejdziesz do „Otwórz za pomocą”, to LaunchServices i Finder nadal obsługują ten plik.

Proste wyliczanie wszystkich plików/Applications i inne katalogi nie działają, ponieważ LaunchServices wie o pakietach aplikacji w dowolnych folderach i potrzebuję również tych aplikacji.

Inne podejście, że nie udało mi się pracować

Najwyraźniej istnieje prywatna funkcja API o nazwie_LSFindApplications co robi dokładnie to, co muszę zrobić, ale nie mogę go uruchomić i nie znalazłem żadnej nieoficjalnej dokumentacji w Internecie. (dowód, że istnieje:nm /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/LaunchServices | grep __LSFindApplications$)

UPDATE: metoda system_profiler również nie działa

Do tej pory myślałemsystem_profiler metoda sugerowana przez @Anoop działa, ale dzisiaj to odkryłemlsregister nadal pobiera więcej plików binarnych. Niektóre lub brakujące na wszystkich maszynach, niektóre brakuje tylkosystem_profiler kiedy zamontowałeś zewnętrzny wolumin z inną instalacją OS X. Oto lista brakujących danych wyjściowychsystem_profiler (ale jest obecny wlsregister) na jednej z moich maszyn:

/Applications/Automator.app/Contents/Resources/Application Stub.app
/Applications/Google Chrome.app/Contents/Versions/30.0.1599.69/Google Chrome Framework.framework/Resources/app_mode_loader.app
/Applications/Google Chrome.app/Contents/Versions/30.0.1599.69/Google Chrome Framework.framework/Resources/crash_report_sender.app
/Applications/Google Chrome.app/Contents/Versions/30.0.1599.69/Google Chrome Helper EH.app
/Applications/Google Chrome.app/Contents/Versions/30.0.1599.69/Google Chrome Helper NP.app
/Applications/Google Chrome.app/Contents/Versions/30.0.1599.69/Google Chrome Helper.app
/System/Library/CoreServices/AddPrinter.app
/System/Library/CoreServices/AirPlayUIAgent.app
/System/Library/CoreServices/AppleFileServer.app
/System/Library/CoreServices/AppleGraphicsWarning.app
/System/Library/CoreServices/AppleScript Runner.app
/System/Library/CoreServices/AppleScript Utility.app
/System/Library/CoreServices/CalendarFileHandler.app
/System/Library/CoreServices/Certificate Assistant.app
/System/Library/CoreServices/CoreLocationAgent.app
/System/Library/CoreServices/CoreServicesUIAgent.app
/System/Library/CoreServices/CoreTypes.bundle
/System/Library/CoreServices/Database Events.app
/System/Library/CoreServices/DiskImageMounter.app
/System/Library/CoreServices/Expansion Slot Utility.app
/System/Library/CoreServices/File Sync.app
/System/Library/CoreServices/FileSyncAgent.app
/System/Library/CoreServices/Folder Actions Dispatcher.app
/System/Library/CoreServices/Folder Actions Setup.app
/System/Library/CoreServices/HelpViewer.app
/System/Library/CoreServices/Image Events.app
/System/Library/CoreServices/Install in Progress.app
/System/Library/CoreServices/Jar Launcher.app
/System/Library/CoreServices/Java Web Start.app
/System/Library/CoreServices/KeyboardSetupAssistant.app
/System/Library/CoreServices/Language Chooser.app
/System/Library/CoreServices/LocationMenu.app
/System/Library/CoreServices/MRTAgent.app
/System/Library/CoreServices/Memory Slot Utility.app
/System/Library/CoreServices/NetAuthAgent.app
/System/Library/CoreServices/Network Diagnostics.app
/System/Library/CoreServices/Network Setup Assistant.app
/System/Library/CoreServices/ODSAgent.app
/System/Library/CoreServices/Pass Viewer.app
/System/Library/CoreServices/Printer Setup Utility.app
/System/Library/CoreServices/RegisterPluginIMApp.app
/System/Library/CoreServices/Screen Sharing.app
/System/Library/CoreServices/SecurityAgent.app
/System/Library/CoreServices/SecurityFixer.app
/System/Library/CoreServices/SocialPushAgent.app
/System/Library/CoreServices/System Events.app
/System/Library/CoreServices/System Image Utility.app
/System/Library/CoreServices/SystemUIServer.app
/System/Library/CoreServices/Ticket Viewer.app
/System/Library/CoreServices/UniversalAccessControl.app
/System/Library/CoreServices/UnmountAssistantAgent.app
/System/Library/CoreServices/UserNotificationCenter.app
/System/Library/CoreServices/VoiceOver.app
/System/Library/CoreServices/ZoomWindow.app
/System/Library/CoreServices/backupd.bundle/Contents/Resources/TMLaunchAgent.app
/System/Library/CoreServices/loginwindow.app
/System/Library/CoreServices/rcd.app
/System/Library/Frameworks/PubSub.framework/Versions/A/Resources/PubSubAgent.app
/System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.framework/Versions/A/Resources/QuickLookUIHelper.app
/System/Library/Frameworks/QuickLook.framework/Versions/A/Resources/quicklookd.app
/System/Library/PrivateFrameworks/DiskImages.framework/Versions/A/Resources/DiskImages UI Agent.app
/System/Library/Services/AppleSpell.service
/System/Library/Services/ChineseTextConverterService.app
/System/Library/Services/ImageCaptureService.app
/System/Library/Services/OpenSpell.service
/System/Library/Services/SpeechService.service
/System/Library/SocialServices/Facebook.socialplugin
/System/Library/SocialServices/Twitter.socialplugin
/System/Library/SocialServices/Weibo.socialplugin

questionAnswers(3)

yourAnswerToTheQuestion