News for hackers. Stuff that matters.
Re:A Unix Utility to Know About: lsof (2009) by voidz on Friday August 26, 2016 @02:58AM (#12364705)
`lsof` and `ps` have the most dense man pages I have ever tried to plow through, and that's causing me to use these tools only at a minimum.
Re:A Unix Utility to Know About: lsof (2009) by johnchristopher on Friday August 26, 2016 @04:10AM (#12364918)
I am guilty of using `ps|aux` for the sole purpose of answering this question: Is it (still) running ?

edit: `ps aux|grep`, indeed. Silly me in the early hours of a rest day :).

Re:A Unix Utility to Know About: lsof (2009) by rakoo on Friday August 26, 2016 @04:42AM (#12365006)
You mean `ps aux | grep` which I am also guilty of using every time ? You might be interested in pgrep (http://linux.die.net/man/1/pgrep) as well.
Re:A Unix Utility to Know About: lsof (2009) by semi-extrinsic on Friday August 26, 2016 @06:36AM (#12365338)
For interactive use, I strongly recommend htop if you're still doing stuff like "ps aux | grep" and then "kill 84728". Htop is top on steroids: ncurses-based and very fast, has colors, threaded or flat process view, sorting by different criteria like cpu or ram use, searching for substring match in process name, interface to killing/signalling to selected process, etc.

http://hisham.hm/htop/

Re:A Unix Utility to Know About: lsof (2009) by johnchristopher on Friday August 26, 2016 @07:39AM (#12365503)
I am more a `killall <processname>` guy.
Re:A Unix Utility to Know About: lsof (2009) by koolba on Friday August 26, 2016 @08:13AM (#12365631)
> I am more a `killall <processname>` guy.

I've made a note to name the executable for my next daemon "humans".

Re:A Unix Utility to Know About: lsof (2009) by Rondom on Friday August 26, 2016 @08:45AM (#12365777)
Don't do that on Solaris ;-)
Re:A Unix Utility to Know About: lsof (2009) by joosters on Friday August 26, 2016 @09:27AM (#12366026)
Been there, done that :(

See also the 'reboot' (or is it the 'poweroff' ?) command, which is much more direct than the Linux equivalent...

Re:A Unix Utility to Know About: lsof (2009) by amyjess on Friday August 26, 2016 @09:47AM (#12366167)
Sometimes, I want something a little more murderous, so I tend to write this script on most systems I use:

    ps -ef | grep $1 | awk '{print "kill -9 " $2}' | sh
Usually stored as /usr/local/bin/kll

I've found it's very useful for killing specific Java programs without having to killall -9 java.

(and, yeah, I should probably be using ps -efww instead of ps -ef, but old habits die hard... I've already got ps aliased to ps -ww for interactive use, so I should probably change this script...)

Re:A Unix Utility to Know About: lsof (2009) by imtringued on Friday August 26, 2016 @10:47AM (#12366643)
You should try jps it's similar to ps but only lists java processes with their real names instead of just "java". It's included in pretty much every JDK.
Re:A Unix Utility to Know About: lsof (2009) by voidz on Tuesday August 30, 2016 @09:23PM (#12395239)
'pkill' can do a bit more, it's the better alternative in my opinion.
Re:A Unix Utility to Know About: lsof (2009) by ozzmotik on Friday August 26, 2016 @11:50AM (#12367050)
oh god i thought I was the only one
Re:A Unix Utility to Know About: lsof (2009) by emidln on Friday August 26, 2016 @12:12PM (#12367198)
For just viewing system information, I usually prefer glances to htop, although it can't signal. It has a curses interface and also includes network traffic, docker containers, disk IO, and it's nicely pluggable for both output formats (it can dump to CSV at interval as a daemon or while you're running it interactively (or something like graphite/influxdb if you have those)) as well as collection mechanisms (you write some python).
Re:A Unix Utility to Know About: lsof (2009) by amyjess on Friday August 26, 2016 @09:52AM (#12366210)
I discovered htop when regular top changed its default behavior to be nigh unusable. htop was recommended as an alternative, and while I've since learned how to configure top to go back to its old behavior [0], I've found that I just prefer htop now.

[0] https://bbs.archlinux.org/viewtopic.php?id=189757

Re:A Unix Utility to Know About: lsof (2009) by mxuribe on Friday August 26, 2016 @07:44AM (#12365514)
Agreed, htop is pretty awesome!
Re:A Unix Utility to Know About: lsof (2009) by glenjamin on Friday August 26, 2016 @10:17AM (#12366412)
I have this little bash function which I like to use to find out if a program is running, and to optionally kill it. Originally my goal was to keep it fitting inside a tweet, but adding helpful messaging just pushed it over.

    pgk ()
    {
        [ -z "$*" ] && echo 'Usage: pgk <pattern>' && return 1;
        pgrep -fl $*;
        [ "$?" == "1" ] && echo 'No processes match' && return 1;
        echo 'Hit [Enter] to pkill, [Ctrl+C] to abort';
        read && pkill -f $*
    }
Re:A Unix Utility to Know About: lsof (2009) by bluedino on Friday August 26, 2016 @08:35AM (#12365722)
>> I am guilty of using `ps|aux`

What's wrong with doing that?

I've been doing that for so long I don't know why I do it

Re:A Unix Utility to Know About: lsof (2009) by dozzie on Friday August 26, 2016 @11:10AM (#12366783)
Because there's so many process selectors and formatters in ps from procps?

  ps -C procname
  ps -p pid
  ps -u username
  ps -t ttyname
  ps -f [-w [-w]]
  ps -o output-format
Re:A Unix Utility to Know About: lsof (2009) by devonkim on Friday August 26, 2016 @10:48AM (#12366646)
Modern Linuxes have pgrep to help avoid the inevitable "lol, the grep process I fired will match" issue that results in having to filter that out as well with yet another program.
Re:A Unix Utility to Know About: lsof (2009) by smhenderson on Friday August 26, 2016 @12:37PM (#12367401)
Yeah, I always felt having to type the extra bit was strange, like maybe grep could have a switch to say "don't find grep" but I guess having a switch for such a specific use case, grepping processes, is overkill.

Anyway, it's just a reflex now to always:

  ps aux | grep <program> | grep -v grep
Re:A Unix Utility to Know About: lsof (2009) by amyjess on Friday August 26, 2016 @02:21PM (#12368194)
You can also surround each character in the program's name with square brackets.

    ps -ef | grep [p][r][o][g][r][a][m]
Re:A Unix Utility to Know About: lsof (2009) by smhenderson on Monday August 29, 2016 @12:11PM (#12382872)
Yes, I never knew that. But I saw it in another post and as the sibling post mentions it's enough to surround just the first character with the brackets...

This is why I love HN, I learn stuff I never knew I wanted to know!

Re:A Unix Utility to Know About: lsof (2009) by jpitz on Friday August 26, 2016 @02:51PM (#12368418)
You only need surround one character.
Re:A Unix Utility to Know About: lsof (2009) by nocman on Friday August 26, 2016 @01:07PM (#12367645)
One problem with pgrep is it has no option to ignore case.

Yes, I do sometimes have processes with camel-cased names which I may or may not remember exactly. So you:

  ps auwx | grep -i {lc-version-of-camel-cased-name}
Re:A Unix Utility to Know About: lsof (2009) by pacaro on Friday August 26, 2016 @11:28AM (#12366913)
Good to know, I always just `ps aux | grep [j]ava`
Re:A Unix Utility to Know About: lsof (2009) by jdhendrickson on Friday August 26, 2016 @03:56AM (#12364879)
Sometimes powerful tools require effort to understand. Lsof is absolutely something you should spend some real time grokking.

In regard to ps you can memorize a few commands until something truly weird comes up since you will probably use other more specialized snapshotting and tracing tools for anything somewhat difficult to troubleshoot.

Re:A Unix Utility to Know About: lsof (2009) by voidz on Friday August 26, 2016 @04:00AM (#12364891)
> Sometimes powerful tools require effort to understand. Lsof is absolutely something you should spend some real time grokking.

Yup, this is true. And I did. But sometimes you just need less dense manual pages.

Re:A Unix Utility to Know About: lsof (2009) by daurnimator on Friday August 26, 2016 @04:19AM (#12364941)
I find lsof and ps too hard to remember, so I usually just use regular linux utilities like cat/grep on the /proc file system.

  - grep bash /proc/*/status
  - readlink /proc/*/fd/* | grep /run
Re:A Unix Utility to Know About: lsof (2009) by atsaloli on Friday August 26, 2016 @11:33AM (#12366941)
That's what I've been trying to tell people about Git, too. It's a powerful tool and it takes some effort to wrap your mind around it.
Re:A Unix Utility to Know About: lsof (2009) by jupiter2 on Friday August 26, 2016 @04:37PM (#12369137)
> `lsof` and `ps` have the most dense man pages I have ever tried to plow through

That's why I was so happy to stumble across pstree the other day. Even the man page is excellent! Every now and again, I'll come across a util like this that I can put into immediate action w/o lots of deciphering. pstree -a is awesome for a relative newbie like me.