What's this?

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.

Get involved!

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.

Universal configuration monitoring and system of record for IT.

Stay in the loop…

Follow the Tweets.

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

Subscribe to the feeds.

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:



May 19, 2015 - A Look At The New Commandlinefu
I've put together a short writeup on what kind of newness you can expect from the next iteration of clfu. Check it out here.
March 2, 2015 - New Management
I'm Jon, I'll be maintaining and improving clfu. Thanks to David for building such a great resource!

Top Tags





Maintained by Jon H.

Site originally by David Winterbottom (user root).

Psst. Open beta.

Wow, didn't really expect you to read this far down. The latest iteration of the site is in open beta. It's a gentle open beta-- not in prime-time just yet. It's being hosted over at UpGuard (link) and you are more than welcome to give it a shot. Couple things:

  • » The open beta is running a copy of the database that will not carry over to the final version. Don't post anything you don't mind losing.
  • » If you wish to use your user account, you will probably need to reset your password.
Your feedback is appreciated via the form on the beta page. Thanks! -Jon & CLFU Team

split a multi-page PDF into separate files

Terminal - split a multi-page PDF into separate files
pdftk in.pdf burst
2010-02-10 13:31:36
User: rodolfoap
split a multi-page PDF into separate files

Simple alternative to the previous submitted one


There are 3 alternatives - vote for the best!

Terminal - Alternatives
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -dFirstPage=2 -dLastPage=2 -sOutputFile=page2.pdf multipageinputfile.pdf
2010-02-10 08:48:48
User: drewbenn
Functions: gs

Have to do this once per output file, because if device is 'pdfwrite', even if 'gs' sees '%d' in the OutputFile it still only creates one single output file. Embed it into a simple shell script if you want to split a document out into one file for every page.

pdftk mydoc.pdf burst
2009-11-10 09:00:50
User: eastwind

Require the pdftk package

It ll split each page in your pdf file , into a new pdf file and report info on doc_data.txt

Know a better way?

If you can do better, submit your command here.

What others think

Better question: do you kn ow of a method to a split a single .pdf page in half, vertically, in the center? I ask because I have a lot of .pdfs that are scans of books given to me by professors, and splitting each page and making it a new one would make those pages Kindle-readable.

Comment by unixmonkey8238 366 weeks and 5 days ago


I don't know of a one-liner that would do that, but I'm sure that short bash or perl script using imagemagick could make that happen.

Comment by bartonski 366 weeks and 4 days ago

imagemagick would do it based on pixels. so to keep the text as text. you would need to burst using stapler or pdftk then convert to svg using inkscape, use inkscape's svg cropping functions; convert back to pdf using inkscape then stapler or pdftk them back together.

If I had an example I could experiment...

Comment by infinull 366 weeks and 4 days ago

I am getting the following error when calling this command?!

Unhandled Java Exception:


at com.lowagie.text.pdf.PdfCopy.copyIndirect(pdftk)

at com.lowagie.text.pdf.PdfCopy.copyObject(pdftk)

at com.lowagie.text.pdf.PdfCopy.copyDictionary(pdftk)

pdftk --version

pdftk 1.44 a Handy Tool for Manipulating PDF Documents

Comment by grekko 306 weeks and 6 days ago

Your point of view

You must be signed in to comment.