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.

If you have a new feature suggestion or find a bug, please get in touch via http://commandlinefu.uservoice.com/

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.


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:



2011-03-12 - Confoo 2011 presentation
Slides are available from the commandlinefu presentation at Confoo 2011: http://presentations.codeinthehole.com/confoo2011/
2011-01-04 - Moderation now required for new commands
To try and put and end to the spamming, new commands require moderation before they will appear on the site.
2010-12-27 - Apologies for not banning the trolls sooner
Have been away from the interwebs over Christmas. Will be more vigilant henceforth.
2010-09-24 - OAuth and pagination problems fixed
Apologies for the delay in getting Twitter's OAuth supported. Annoying pagination gremlin also fixed.




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 is 1 alternative - 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 263 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 263 weeks and 5 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 263 weeks and 5 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 204 weeks ago

Your point of view

You must be signed in to comment.

Related sites and podcasts