Question

I am looking for a command in Unix that returns the status of a process(active, dead, sleeping, waiting for another process, etc.)

is there any available?
A shell script maybe?

Was it helpful?

Solution

Try pflags <pid>, which will give you per-thread status information. Example:

root@weetbix # pflags $$
3384:   bash
        data model = _ILP32  flags = ORPHAN|MSACCT|MSFORK
 /1:    flags = ASLEEP  waitid(0x7,0x0,0xffbfefc0,0xf)
        sigmask = 0x00020000,0x00000000

Also check out the manpage for pflags to see other useful tools like pstack, pfiles, pargs etc.

OTHER TIPS

in linux, something like ps -p somepid --no-headers -o state should work, alternately you can look for the info in proc with grep ^State: /proc/somepid/status

Playing with ps options doesn't give you what you need?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top