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:
Recursively removes all those hidden .DS_Store folders starting in current working directory.
This command will delete files i a given path (/dir_name) , which older than given time in days (-mtime +5 will delete files older than five days.
You can use this command to delete CVS/svn folders on given project.
Rather than typing out all 10 files, you can use brace expansion to do the trick for you. This is useful for backup files, numbered files, or any files with a repeating pattern. Gives more control than 'rm file*' as I might want to keep others around.
This command handles git rm'ing files that you've deleted.
Deletes thousands of files at one go, I'm not able to recall the exact # of files that rm can delete at one go(apprx. around 7000.)
This is my first attempt at converting all HTML files to UTF-8 file encoding, including all subfolders.
Theres probably a much more compact way to do it, but I'm quite proud of it with my windows background ;)
Add the functions to the .bashrc to make it work
Example: First go to the iso file directory and type:
----------------------------------------------------------------------------------------------------
user@box:~$ miso file.iso
----------------------------------------------------------------------------------------------------
It will put you into a temporary mounting point directory (ISO_CD) and will show the files
You can umount the iso file whatever the directory you are
----------------------------------------------------------------------------------------------------
user@box:~/ISO_CD$ uiso
----------------------------------------------------------------------------------------------------
It wil umount the iso file and remove the temporary directory in your home
I often need to send screenshots to other people to explain settings and whatever.
So I created this oneline which I use to create the screenshot with imagemagik, upload it via scp to my server and then the command opens an firefox tab with the screenshot.
The screenshot can be a region or a window.
You just have to replace the parts beginning with YOUR.
This runs a command continuously, restarting it if it exits. Sort of a poor man's daemontools. Useful for running servers from the command line instead of inittab.
Found here: http://xentek.net/xentek/315/recursively-delete-svn-folders/
This is fast and efficient because rm is only run once.
Using the redundant ./ directory information prevents the dash from occurring at the beginning of the filename, and being interpreted as an option of the rm command.
Also works using:
rm -- -filename
This command will erase all bytecode versions of Python modules under the current directory.
This command deletes all files in all subfolders if their name or path contains "deleteme".
To dry-run the command without actually deleting files run:
find . | grep deleteme | while read line; do echo rm $line; done
If you need to delete all redundant ".svn" directories from a given path and all its subdirectories, use this command !
Particulary useful if you want to upload to an ftp server, but don't use svn or if you need to update/backup some source code to another directory.
You can also try "svn export . /new/path/without/svn/dirs" (also from the CLI)
For a python project, sometimes I need to clean all the compiled python files. I have an alias 'rmpyc' to this command. This really saves me a lot of typing and hunting throughout the folders to delete those files.
This command will remove all .svn folder from your project if you need to manual remove the subversion files.
Copy data to the destination using commands such as cpio (recommended), tar, rsync, ufsdump, or ufsrestore.
Example:
Let the source directory be /source, and let the destination directory be /destination.
# cd /source
# cd ..
# find ./source -depth -print | cpio -cvo> /destination/source_data.cpio
# cd /destination
# cpio -icvmdI ./source_data.cpio
# rm -rf ./source_data.cpio