Seeing processes

Typing ps by itself displays a simple list of all the shells you are running, as well as all their child processes:

andy@honey[~/mosxnut3]$ ps
PID  TT  STAT      TIME COMMAND
 1692  p1  S      0:00.35 -bash
 3273  p2  S      0:00.02 -bash
 3284  p2  S+     0:00.75 ssh chimpy
 3311  p3  S      0:00.02 -bash
 3313  p3  S+     0:00.05 vim outline.pod
 3883  p4  S      0:00.02 -bash
 3886  p4  S+     0:00.10 make perl
 3950  p4  S+     0:00.01 cc -c -DPERL_CORE -fno-common -DPERL_DARWIN -no-
 3958  p4  S+     0:00.01 powerpc-apple-darwin8-gcc-4.0.0 -c -DPERL_CORE -
 3959  p4  R+     0:00.07 /usr/libexec/gcc/powerpc-apple-darwin8/4.0.0/cc1 -
 3960  p4  S+     0:00.00 as -arch ppc -o op.o
 3961  p4  S+     0:00.00 /usr/libexec/gcc/darwin/ppc/as -arch ppc -o op.o

Here you can see that the user andy owns four instances of the bash shell. Within these shells, a vi session is active, ssh has connected to a server called “chimpy”, and make is building an instance of Perl. make itself is calling elements of the GCC compiler suite, such as cc and as.

The numbers in the first column of the table show the PID number of each process. These are what you can feed to the commands listed in Table 3-2 in order to foreground, background, or send signals to them.

Alternatively, you can use shell-relative PIDs with these commands. Invoking jobs lists only those the processes running as children to the current shell:

andy@honey[~/mosxnut3]$ jobs
[1]    running    sudo bin/safe_mysqld
[2]  + vi README
andy@honey[~/mosxnut3]$

The bracketed numbers leading each row of this output table can be used ...

Get Mac OS X Tiger in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.