commandlinefu.com is the place to record those command-line gems that you return to again and again.
Delete that bloated snippets file you've been using and share your personal repository with the world. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.
You can sign-in using OpenID credentials, or register a traditional username and password.
First-time OpenID users will be automatically assigned a username which can be changed after signing in.
Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.
» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10
Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):
Subscribe to the feed for:
Useful when you have some wrong on a server (nfs freeze/ immortal process)
The command could show you all conecctions if you skip "grep ESTABLISHED"
Create a bunch of random files with random binary content. Basically dd dumps randomly from your hard disk to files random-file*.
Query Wikipedia by issuing a DNS query for a TXT record. The TXT record will also include a short URL to the complete corresponding Wikipedia entry.You can also write a little shell script like:
$ cat wikisole.sh
#!/bin/sh
dig +short txt ${1}.wp.dg.cx
and run it like
./wikisole.sh unix
were your first option ($1) will be used as search term.
Display the amount of memory used by all the httpd processes. Great in case you are being Slashdoted!
A simple "ls" lists files *and* directories. So we need to "find" the files (type 'f') only.
As "find" is recursive by default we must restrict it to the current directory by adding a maximum depth of "1".
If you should be using the "zsh" then you can use the dot (.) as a globbing qualifier to denote plain files:
zsh> ls *(.) | wc -l
for more info see the zsh's manual on expansion and substitution - "man zshexpn".
The initial version of this command also outputted extra empty lines, so it went like this:
192.168.166.48
127.0.0.1
This happened on Ubuntu, i haven't tested on anything else.
slashdot.org webserver adds an X-Bender or X-Fry HTTP header to every response!
Open a ssh session opened forever, great on laptops losing Internet connectivity when switching WIFI spots.
Due to the recent dynamic update vulnerability with bind, I was forced to dig a little deeper into dig...
bnd-ips.txt is a list of IP adresses that is concenated for use as regular expression. Yes, this is still very speedy ;=)
use find to grep all .c files from the target directory, cat them into one stream, then piped to wc to count the lines
The command `cat file >> file` failes with the following error message:
cat: file: input file is output file
`tee` is a nice workaround without using any temporary files.
This will launch and irssi session on your server. If it's not running, it will create the session. If it's running it'll connect to it and destroy any other connections. If compositing is available, the rxvt window will have transparency added. This window will also open maximized. Anything else this does should be easily figured out in the man pages.
On a Gentoo system, this command will tell you which packets you have installed and sort them by how much space they consume. Good for finding out space-hogs when tidying up disk space.