Mac Developer Library Developer


This manual page is for Mac OS X version 10.9

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

lp(1)                                            Apple Inc.                                            lp(1)

       lp - print files

       lp  [  -E  ]  [ -U username ] [ -c ] [ -d destination[/instance] ] [ -h hostname[:port] ] [ -m ] [ -n
       num-copies ] [ -o option[=value] ] [ -q priority ] [ -s ] [ -t title ] [ -H handling ] [ -P page-list
       ] [ -- ] [ file(s) ]
       lp  [  -E  ]  [  -U  username  ]  [  -c ] [ -h hostname[:port] ] [ -i job-id ] [ -n num-copies ] [ -o
       option[=value] ] [ -q priority ] [ -t title ] [ -H handling ] [ -P page-list ]

       lp submits files for printing or alters a pending job. Use a filename of "-" to force  printing  from
       the standard input.

       CUPS  provides many ways to set the default destination. The "LPDEST" and "PRINTER" environment vari-ables variables
       ables are consulted first. If neither are set, the current default set using the lpoptions(1) command
       is used, followed by the default set using the lpadmin(8) command.

       The following options are recognized by lp:

       --Marks -Marks
            Marks the end of options; use this to print a file whose name begins with a dash (-).

            Forces encryption when connecting to the server.

       -U username
            Specifies the username to use when connecting to the server.

            This  option  is  provided  for  backwards-compatibility  only. On systems that support it, this
            option forces the print file to be copied to the spool directory before printing. In CUPS, print
            files are always sent to the scheduler via IPP which has the same effect.

       -d destination
            Prints files to the named printer.

       -h hostname[:port]
            Chooses an alternate server.

       -i job-id
            Specifies an existing job to modify.

            Sends an email when the job is completed.

       -n copies
            Sets the number of copies to print from 1 to 100.

       -o "name=value [name=value ...]"
            Sets one or more job options.

       -q priority
            Sets the job priority from 1 (lowest) to 100 (highest). The default priority is 50.

            Do not report the resulting job IDs (silent mode.)

       -t "name"
            Sets the job name.

       -H hh:mm

       -H hold

       -H immediate

       -H restart

       -H resume
            Specifies  when the job should be printed. A value of immediate will print the file immediately,
            a value of hold will hold the job indefinitely, and a UTC time value (HH:MM) will hold  the  job
            until  the  specified UTC (not local) time. Use a value of resume with the -i option to resume a
            held job.  Use a value of restart with the -i option to restart a completed job.

       -P page-list
            Specifies which pages to print in the document. The list can  contain  a  list  of  numbers  and
            ranges (#-#) separated by commas (e.g. 1,3-5,16). The page numbers refer to the output pages and
            not the document's original pages - options like "number-up" can affect  the  numbering  of  the

       Aside  from  the printer-specific options reported by the lpoptions(1) command, the following generic
       options are available:

       -o media=size
            Sets the page size to size. Most printers support at least the size names  "a4",  "letter",  and

       -o landscape

       -o orientation-requested=4
            Prints the job in landscape (rotated 90 degrees).

       -o sides=one-sided

       -o sides=two-sided-long-edge

       -o sides=two-sided-short-edge
            Prints  on  one or two sides of the paper. The value "two-sided-long-edge" is normally used when
            printing portrait (unrotated) pages, while "two-sided-short-edge" is used for landscape pages.

       -o fit-to-page
            Scales the print file to fit on the page.

       -o number-up=2

       -o number-up=4

       -o number-up=6

       -o number-up=9

       -o number-up=16
            Prints multiple document pages on each output page.

       -o cpi=N
            Sets the number of characters per inch to use when printing a text file. The default is 10.

       -o lpi=N
            Sets the number of lines per inch to use when printing a text file. The default is 6.

       -o page-bottom=N

       -o page-left=N

       -o page-right=N

       -o page-top=N
            Sets the page margins when printing text files. The values are in points - there are  72  points
            to the inch.

       Print a double-sided legal document to a printer called "foo":
           lp -d foo -o media=legal -o sides=two-sided-long-edge filename

       Print an image across 4 pages:
           lp -d bar -o scaling=200 filename

       Print a text file with 12 characters per inch, 8 lines per inch, and a 1 inch left margin:
           lp -d bar -o cpi=12 -o lpi=8 -o page-left=72 filename

       Unlike  the  System  V  printing system, CUPS allows printer names to contain any printable character
       except SPACE, TAB, "/", or "#".  Also, printer and class names are not case-sensitive.

       The "q" option accepts a different range of values than the Solaris lp command, matching the IPP  job
       priority  values  (1-100,  100 is highest priority) instead of the Solaris values (0-39, 0 is highest

       cancel(1), lpadmin(8), lpmove(8), lpoptions(1), lpstat(1),

       Copyright 2007-2013 by Apple Inc.

16 July 2012                                        CUPS                                               lp(1)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.