by Sandra Henry-Stocker
Operating systems

Long listings for the ps command

August 7, 2008, 11:15 AM — 

Ever jump onto a Unix system to help resolve a critical problem and find that the information you most want to see in your ps output has run off the right edge of your terminal window? Who hasn't? Fortunately, the various flavors of Unix have command options to allow you to view the text that is normally truncated.

On Linux systems, for example, there is an "l" (long) option that will turn output such as this:


# ps -ef | egrep "apache|CMD"
UID PID PPID C STIME TTY TIME CMD
root 13379 1 0 Jul31 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 21193 13379 0 Aug01 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 7674 13379 0 Aug04 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 7767 13379 0 Aug04 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 7768 13379 0 Aug04 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 7772 13379 0 Aug04 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 7773 13379 0 Aug04 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 12341 13379 0 Aug06 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 13810 13379 0 Aug06 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 13811 13379 0 Aug06 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s
daemon 13812 13379 0 Aug06 ? 00:00:00 /var/local/ap
ache/bin/httpd -k s

into output that looks like this:


# ps -elf | egrep "apache|CMD"
F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME
TTY TIME CMD
140 S root 13379 1 0 75 0 - 1234 schedu Jul31
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 21193 13379 0 75 0 - 1289 schedu Aug01
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 7674 13379 0 75 0 - 1289 schedu Aug04
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 7767 13379 0 75 0 - 1289 schedu Aug04
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 7768 13379 0 75 0 - 1289 schedu Aug04
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 7772 13379 0 75 0 - 1289 schedu Aug04
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 7773 13379 0 75 0 - 1289 schedu Aug04
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 12341 13379 0 75 0 - 1289 schedu Aug06
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 13810 13379 0 75 0 - 1286 schedu Aug06
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 13811 13379 0 75 0 - 1286 schedu Aug06
? 00:00:00 /var/local/apache/bin/httpd -k start
140 S daemon 13812 13379 0 75 0 - 1286 schedu Aug06
? 00:00:00 /var/local/apache/bin/httpd -k start

You not only get the complete command line, but several extra fields are included. For example, WCHAN, which indicates the event on which the process is waiting, is shown in the 11th column in this output.

Solaris systems, on which I spend most of the e-time, also provide the "l" (long) option, though they generally wrap the ps output onto the following line rather than truncate ps output.

Mac OS X systems, which still use the "aux" version of the ps command, offer a "w" (wide) option which provides 132 columns in ps output instead of the default 80.

The order in which the arguments to ps arguments are presented is arbitrary, though I have always seen "ef" and "aux" as the standards, maybe because the letters in the argument list are in alphabetical order. I prefer "elf" to "efl" since its an easy-to-remember and friendly word and "uwax" to "auwx" for a similar reason, but you can adopt whatever argument order appeals to you.

I like it!
Comments

I've always wondered how to

I've always wondered how to view a long cmd line argument for a process using ps, and the article states that in Solaris, the output is wrapped using the "l" cmd. I use Solaris 9, and the output is not wrapped. To overcome this shortcoming, I use the BSD version:
/usr/ucb/ps -auxww

Works great.
| reply
Free books

Build your tech library with our book giveaways.

Windows PowerShell 2.0 Unleashed
By Tyson Kopczynski, Pete Handley, Marco Shaw; Published by Sams

Windows PowerShell Unleashed will not only give you deep mastery over PowerShell but also a greater understanding of the features being introduced in PowerShell 2.0–and show you how to use it to solve your challenges in your production environment. Enter now!

 

Ubuntu Server Administration
By Michael Jang; Published by McGraw-Hill Osborne Media

Realize a dynamic, stable, and secure Ubuntu Server environment with expert guidance, tips, and techniques from a Linux professional. Ubuntu Server Administration covers every facet of system management -- from users and file systems to performance tuning and troubleshooting. Enter now!

Featured Sponsor

AISO founders envisioned a Web hosting company that was environmentally friendly. While the company employed energy-efficient innovations like solar panels, its infrastructure produced unacceptable power and cooling requirements. Find out how AISO leveraged AMD technology to overcome their challenge in this case study white paper.

In this whitepaper, Scalar explores the opportunity to change the landscape with respect to mission critical databases built around Oracle. Leveraging technologies such as Linux, high-end commodity processing power and Oracle RAC technology to architect, design, build and maintain database infrastructure that delivers maximum availability, reliability and performance at a fraction of traditional cost.

On a typical day, weather.com, the Web site for The Weather Channel in Atlanta, serves up between 15 million and 20 million page views. But in September 2004, when back-to-back hurricanes ransacked Florida, the peak traffic on one day more than tripled: over 70 million page views by more than 7 million unique visitors. Read the full success story now.

More Resources