Get and install the psutils package. Build the following shell aliases
alias prepare 'psnup -2 \!* two_up.ps; \ psselect -r -o two_up.ps odd_reversed.ps; \ psselect -e two_up.ps even.ps' |
prepare bigfile.ps |
This assumes that you a have printer that stacks face up, like most HP Deskjets, for instance (if not, you'll figure out the right way to turn the pages after a little testing) It also assumes that your printer does not jam easily or feed two sheets at once (use quality paper or wait for the paper to flatten). If you are using a network printer, before printing the second time, open the tray so that printing is stopped and check the queue to make sure you are the first to print. If not, let the other users print first on empty sheets and add your paper later (you don't want your pages meessed up with other people's pages).
If your file is not Postscript, you can use a conversion tool first to convert it to Postscript and then do the above. Another package useful for this and other printed-related jobs is mpage (currently distributed with Red Hat Linux and available on other platforms too). It can do double-sided printed in the manner described above (see the man page of mpage) and also supports duplex printers directly.
Return to : Unix System Administration Hints and Tips