GeekBits

How to Use system_profiler Utility in macOS Terminal

In this post, we will provide you with a list of commands you can use when you need to gather information about the macOS system from the terminal.

2 min read
How to Use system_profiler Utility in macOS Terminal

The system_profiler utility in macOS is a command-line tool that provides detailed technical information about the hardware and software configuration of a Mac computer.

It essentially generates a comprehensive report, or "profile," of the system, which can be useful for troubleshooting, system administration, and understanding the specifications of a Mac.

Get System Information

To get system information from the system_profiler utility, you can use the command as shown:

system_profiler SPSoftwareDataType

Get Printer Information

To gather any available printer information, you can run the command as shown:

system_profiler SPPrintersDataType

Output:

Printers:

      Status: The printers list is empty. To add printers, choose Apple menu > System Settings…, click Printers & Scanners, and then click Add Printer, Scanner, or Fax…
      CUPS Version: CUPS/2.3.4 (macOS 14.0; arm64) IPP/2.0

Get Installed Apps

To gather the information about installed apps, you can run the command as:

system_profiler SPApplicationsDataType

Example output:

Applications:

    CopyClip 2:

      Version: 2.9.98.9
      Obtained from: Identified Developer
      Last Modified: 25/09/2021, 17:45
      Kind: Universal
      Signed by: Developer ID Application: FIPLAB Ltd (VM4H2VWS56), Developer ID Certification Authority, Apple Root CA
      Location: /Applications/CopyClip 2.app

    AnyDesk:

      Version: 7.2.1
      Obtained from: Identified Developer
      Last Modified: 21/07/2023, 16:52
      Kind: Universal
      Signed by: Developer ID Application: philandro Software GmbH (KU6W3B6JMZ), Developer ID Certification Authority, Apple Root CA
      Location: /Applications/AnyDesk.app

    CleanShot X:

      Version: 4.6
      Obtained from: Identified Developer
      Last Modified: 05/09/2023, 23:41
      Kind: Universal
      Signed by: Developer ID Application: Make The Web Oślizło & Magiera s.c. (AFJU4P8ZV4), Developer ID Certification Authority, Apple Root CA
      Location: /Applications/CleanShot X.app

    The Unarchiver:

      Version: 4.3.5
      Obtained from: Identified Developer
      Last Modified: 13/05/2022, 12:14
      Kind: Universal
      Signed by: Developer ID Application: MacPaw Inc. (S8EX82NJP6), Developer ID Certification Authority, Apple Root CA
      Location: /Applications/The Unarchiver.app

    group.is.workflow.my:

      Obtained from: Unknown
      Last Modified: 29/08/2023, 04:19
      Kind: Other
      Location: /Users/csalem/Library/Application Scripts/group.is.workflow.my.app

    com.apple.ctcategories:

      Obtained from: Unknown
      Last Modified: 29/08/2023, 04:23
      Kind: Other
      Location: /Users/csalem/Library/HTTPStorages/com.apple.ctcategories.service

    MRT:

      Version: 1.93
      Obtained from: Apple
      Last Modified: 29/08/2023, 04:28
      Kind: Universal
      Signed by: Software Signing, Apple Code Signing Certification Authority, Apple Root CA
      Location: /Library/Apple/System/Library/CoreServices/MRT.app

Get Installed Frameworks

To gather information about installed Frameworks, we can run the command as shown:

system_profiler SPFrameworksDataType

Get Developer Tools Information

To return the developer tools information, run the command:

system_profiler SPDeveloperToolsDataType

Get Startup Items

To view the information about startup items in macOS, run the command as shown:

system_profiler SPStartupItemDataType

Get Network Information

To fetch detailed networki information, run the command:

system_profiler SPNetworkDataType

Get Firewall Status

The command below should return detailed firewall information.

system_profiler SPFirewallDataType

Get Bluetooth Informtion

To get detailed bluetooth information, run the command:

system_profiler SPBluetoothDataType

Get Ethernet Information

To get ethernet information on the host machine, run the command:

system_profiler SPEthernetDataType

Get USB Information

To get detailed USB information on the machine, run the command:

system_profiler SPUSBDataType

Conclusion

This short tutorial shows you how to use the system_profiler utility in macOS to gather detailed information about various system objects.

Sign up for our newsletter

Don't miss anything. Get all the latest posts delivered to your inbox. No spam!