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.
If you have a new feature suggestion or find a bug, please get in touch via http://commandlinefu.uservoice.com/
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:
Original author unknown (I believe off of a wifi hacking forum).
Used in conjuction with ifconfig and cron.. can be handy (especially spoofing AP's)
##Dependancies: bash coreutils
Many executables in $PATH have the keyword somewhere other than the beginning in their file names. The command is useful for exploring the executables in $PATH like this.
find ${PATH//:/ } -executable -type f -printf "%f\n" |grep admin
lpadmin
time-admin
network-admin
svnadmin
users-admin
django-admin
shares-admin
services-admin
G - uses VT100 line drawing
a - shows command line arguments of process
p - prints PID of process
For other options, man pstree :)
One can test their python regex matching using this shell function.
for e.g.
rgx_match "translate\s*\(([0-9-.]+),([0-9-.]+)\)" "translate(162.11517,76.817357)"
('162.11517', '76.817357')
wanna know something about your hardware? how about EVERYTHING?? then this should do ya well
if you lose your sound, this will restart alsa and you will get your sound back
Find all files that contain string XXX in them, change the string from XXX to YYY, make a backup copy of the file and save a list of files changed in /tmp/fileschanged.
Will unmount a mount that has already dropped but is locked by a process.
srchpymod
for e.g.
srchpymod cairo Surface
['ImageSurface', 'PDFSurface', 'PSSurface', 'SVGSurface', 'Surface', 'SurfacePattern', 'XlibSurface']
cd - would return to the previous directory of your cd command. NB: previous dir is always stored in $OLDPWD variable.
After you install/remove lots of packages, there are many packages marked with 'rc'. This script help you to purge these packages, it will save some spaces from your disk.
This command is more for demonstrating piping to vim and jumping to a specific line than anything else.
Exit vim with :q!
+23 jumps to line 23
- make vim receive the data from the pipe
You can get XMMS from here if it's not in your repositories:
Just a quick and simple one to demonstrate Bash For loop. Copies 'file' to multiple ssh hosts.
Find random strings within /dev/urandom. Using grep filter to just Alphanumeric characters, and then print the first 30 and remove all the line feeds.
(relies on 'imagemagick')
Convert all .png files to .gif. This can also go the other way if you reverse the file extensions in the command, e.g.:
for file in *.gif; do convert "$file" "$(basename $file .gif).png"; done
If the file is named 'example1.png' it will be named 'example1.gif' when it is complete.
(relies on 'imagemagick')
This command will convert all .pdf files in a directory into a 800px (wide or height, whichever is smaller) image (with the aspect ratio kept) .jpg.
If the file is named 'example1.pdf' it will be named 'example1.jpg' when it is complete.
This is a VERY worthwhile command! People pay hundreds of dollars for this in the Windows world.
My .jpg files average between 150kB to 300kB, but your's may differ.