Mac OSX : Get a process/daemon status information

Problem :

You need to get status information about a process or daemon running on Mac OS X environment to determine if the process or daemon is still running. The information provided by Activity Monitor is just way too much information or you happen to ssh into your Mac OS machine with terminal without GUI. Is there a way to find out if the process or daemon is running or not?

Solution :

Apple has its own tool that replaces init, inetd or service found in other flavours of Unix/Linux. Use launchctl to get the information you seek. launchctl is the controlling tool for launchd.

For example :

To find out the list of available service/process/daemon :

>sudo launchctl list

once you have the list you can query individual process for more information :

>sudo launchctl list

will give out :

  "LimitLoadToSessionType" = "System";
  "MachServices" = {
 "" = mach-port-object;
  "Label" = "";
  "TimeOut" = 30;
  "OnDemand" = true;
  "LastExitStatus" = 0;
  "PID" = 160;
  "Program" = "/usr/libexec/usbd";

By Adam Ng

IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.