Wie erhalte ich eine Liste der installierten Apps auf meinem Mac? [Duplikat]

Wie kann ich die Liste aller Mac-Anwendungen analysieren? Ich führe aus:

ls /Library/Preferences/ > apps.txt

Aber es gibt immer noch einige Apps, die in der Liste fehlen. Ich denke, es analysiert nur Benutzer-Apps und nicht allgemeine Apps

Dieser Ordner enthält nicht alle Anwendungen, daher ist es nicht verwunderlich, dass einige fehlen. Eigentlich können Anwendungen mehr oder weniger überall installiert/gespeichert werden, daher ist die Suche nach „*.app“ durch locateoder findmöglicherweise der bessere Ansatz

Antworten (2)

system_profiler

Um alle Anwendungen auf einem Mac aufzulisten, verwenden Sie den system_profilerBefehl:

system_profiler SPApplicationsDataType

Dadurch wird der Befehl in einem für Menschen lesbaren Format ausgegeben:

   Power Manager:

      Version: 4.6.1
      Obtained from: Identified Developer
      Last Modified: 20/01/2018, 6:42 pm
      Kind: Intel
      64-Bit (Intel): Yes
      Signed by: Developer ID Application: Dragon Systems Software Limited, Developer ID Certification Authority, Apple Root CA
      Location: /Applications/Power Manager.app

Dazu gehören alle Anwendungen auf dem Mac, einschließlich vieler, die in Ordnern versteckt sind.

XML-formatierte Liste

-xmlFügen Sie dem Befehl die Option für ein Format hinzu, das von anderen Tools geparst und analysiert werden kann:

system_profiler -xml SPApplicationsDataType

Dadurch wird eine Eigenschaftsliste (XML) ausgegeben, wie zum Beispiel:

        ...
        <dict>
            <key>_name</key>
            <string>Safari</string>
            <key>has64BitIntelCode</key>
            <string>yes</string>
            <key>info</key>
            <string>11.0.3, Copyright © 2003-2017 Apple Inc.</string>
            <key>lastModified</key>
            <date>2018-01-31T08:33:08Z</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>11.0.3</string>
        </dict>
        ...
Beispielsweise gibt es 2 Admin-Benutzer: Admin1 und Admin2. Eine der Anwendungen wird nur für Admin2 installiert, falls ich mich als Admin1 anmelde und system_profiler SPApplicationsDataType eingebe, werden Anwendungen angezeigt, die nur für Admin2 installiert sind?
Ich vermute, Sie werden beide sehen, aber Sie sollten das Verhalten testen, bevor Sie sich auf die Ausgabe verlassen. Dieses Tool wird von Apple zum Debuggen und Profilieren von Macs verwendet, daher glaube ich, dass es so vollständig ist, wie es vernünftigerweise sein kann.
nur falls sich jemand wundert, das geht nicht ohne Spotlight. Außerdem kann das Wissen von Spotlight aus verschiedenen Gründen lückenhaft sein (einschließlich "Indexierung noch nicht abgeschlossen").

ls /Applications > apps.txtsollte ausreichen, wenn Sie nur die Anwendungsnamen wollen. Wenn Sie Anwendungen nur für einen Benutzer installiert haben (was selten vorkommt), müssen Sie es möglicherweise erneut tun, wie ls /Users/username/Applications > apps.txt.

Kommentare sind nicht für längere Diskussionen gedacht; diese Konversation wurde in den Chat verschoben .