]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/options.html
Update ipp documentation to reflect the behavior of configuring WiFi on IPP USB printers.
[thirdparty/cups.git] / doc / help / options.html
CommitLineData
4744bd90 1<HTML>
2<!-- SECTION: Getting Started -->
3<HEAD>
b94498cf 4 <TITLE>Command-Line Printing and Options</TITLE>
178cb736 5 <LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css">
4744bd90 6</HEAD>
7<BODY>
8
178cb736
MS
9<H1 CLASS="title">Command-Line Printing and Options</H1>
10
4744bd90 11<P>CUPS provides both the System V (<A
12HREF="man-lp.html">lp(1)</A>) and Berkeley (<A
13HREF="man-lpr.html">lpr(1)</A>) printing commands for printing
14files. In addition, it supported a large number of standard and
15printer-specific options that allow you to control how and where
16files are printed.</P>
17
18
19<H2 CLASS="title"><A NAME="BASICS">Printing Files</A></H2>
20
21<P>CUPS understands many different types of files directly,
22including text, PostScript, PDF, and image files. This allows you
23to print from inside your applications or at the command-line,
24whichever is most convenient! Type either of the following
25commands to print a file to the default (or only) printer on the
26system:</P>
27
28<PRE CLASS="command">
29lp filename
30lpr filename
31</PRE>
32
33<H3><A NAME="PRINTER">Choosing a Printer</A></H3>
34
35<P>Many systems will have more than one printer available to the
36user. These printers can be attached to the local system via a
37parallel, serial, or USB port, or available over the network. Use
38the <A HREF="man-lpstat.html">lpstat(1)</A> command to see a list
39of available printers:</P>
40
41<PRE CLASS="command">
42lpstat -p -d
43</PRE>
44
45<P>The <CODE>-p</CODE> option specifies that you want to see a
46list of printers, and the <CODE>-d</CODE> option reports the
47current default printer or class.</P>
48
49<P>Use the <CODE>-d</CODE> option with the <B>lp</B> command to
50print to a specific printer:</P>
51
52<PRE CLASS="command">
53lp -d printer filename
54</PRE>
55
56<P>or the <CODE>-P</CODE> option with the <B>lpr</B> command:</P>
57
58<PRE CLASS="command">
59lpr -P printer filename
60</PRE>
61
62<H3><A NAME="DEFAULT">Setting the Default Printer</A></H3>
63
64<P>If you normally use a particular printer, you can tell CUPS to
65use it by default using the <A
66HREF="man-lpoptions.html">lpoptions(1)</A> command:</P>
67
68<PRE CLASS="command">
69lpoptions -d printer
70</PRE>
71
72<H3><A NAME="PIPE">Printing the Output of a Program</A></H3>
73
74<P>Both the <B>lp</B> and <B>lpr</B> commands support printing
75from the standard input:</P>
76
77<PRE CLASS="command">
78program | lp
79program | lp -d printer
80program | lpr
81program | lpr -P printer
82</PRE>
83
84<P>If the program does not provide any output, then nothing will
85be queued for printing.</P>
86
87<H3><A NAME="WITHOPTIONS">Specifying Printer Options</A></H3>
88
89<P>For many types of files, the default printer options may be
90sufficient for your needs. However, there may be times when you
91need to change the options for a particular file you are
92printing.</P>
93
94<P>The <B>lp</B> and <B>lpr</B> commands allow you to pass
95printer options using the <CODE>-o</CODE> option:</P>
96
97<PRE CLASS="command">
3e7fe0ca
MS
98lp -o landscape -o fit-to-page -o media=A4 filename.jpg
99lpr -o landscape -o fit-to-page -o media=A4 filename.jpg
4744bd90 100</PRE>
101
102<P>The available printer options vary depending on the printer.
103The standard options are described in the "<A
104HREF="#OPTIONS">Standard Printing Options</A>" section
b86bc4cf 105below. Printer-specific options are also available and can be
106listed using the <B>lpoptions</B> command:</P>
107
108<PRE CLASS="command">
109lpoptions -p printer -l
110</PRE>
4744bd90 111
f42414bf 112<H3><A NAME="INSTANCES">Creating Saved Options</A></H3>
113
114<P>Saved options are supported in CUPS through <em>printer
115instances</em>. Printer instances are, as their name implies, copies
116of a printer that have certain options associated with them. Use the
117<B>lpoptions</B> command to create a printer instance:</P>
118
119<PRE CLASS="command">
120lpoptions -p printer/instance -o name=value ...
121</PRE>
122
123<P>The <CODE>-p printer/instance</CODE> option provides the name of
124the instance, which is always the printer name, a slash, and the
125instance name which can contain any printable characters except
126space and slash. The remaining options are then associated with the
127instance instead of the main queue. For example, the following
128command creates a duplex instance of the LaserJet queue:</P>
129
130<PRE CLASS="command">
131lpoptions -p LaserJet/duplex -o sides=two-sided-long-edge
132</PRE>
133
134<P>Instances <em>do not</em> inherit lpoptions from the main
135queue.</P>
136
4744bd90 137<H3><A NAME="COPIES">Printing Multiple Copies</A></H3>
138
139<P>Both the <B>lp</B> and <B>lpr</B> commands have options for
140printing more than one copy of a file:</P>
141
142<PRE CLASS="command">
7ff4fea9
MS
143lp -n <EM>num-copies</EM> filename
144lpr -#<EM>num-copies</EM> filename
4744bd90 145</PRE>
146
147<P>Copies are normally <EM>not</EM> collated for you. Use the
40df01c1 148<CODE>-o collate=true</CODE> option to get collated copies:</P>
4744bd90 149
150<PRE CLASS="command">
40df01c1
MS
151lp -n <EM>num-copies</EM> -o collate=true filename
152lpr -#<EM>num-copies</EM> -o collate=true filename
4744bd90 153</PRE>
154
155
156<H2 CLASS="title"><A NAME="CANCEL">Canceling a Print Job</A></H2>
157
158<P>The <A HREF="man-cancel.html">cancel(1)</A> and <A
159HREF="man-lprm.html">lprm(1)</A> commands cancel a print job:</P>
160
161<PRE CLASS="command">
7ff4fea9
MS
162cancel <EM>job-id</EM>
163lprm <EM>job-id</EM>
4744bd90 164</PRE>
165
7ff4fea9 166<P>The <EM>job-id</EM> is the number that was reported to you by
4744bd90 167the <B>lp</B> command. You can also get the job ID using the <A
168HREF="man-lpq.html">lpq(1)</A> or <A
169HREF="man-lpstat.html">lpstat</A> commands:</P>
170
171<PRE CLASS="command">
172lpq
173lpstat
174</PRE>
175
176
b94498cf 177<H2 CLASS="title"><A NAME="LPMOVE">Moving a Print Job</A></H2>
178
179<P>The <A HREF="man-lpmove.html">lpmove(8)</A> command moves a print
180job to a new printer or class:</P>
181
182<PRE CLASS="command">
7ff4fea9 183lpmove <EM>job-id</EM> <i>destination</i>
b94498cf 184</PRE>
185
7ff4fea9 186<P>The <EM>job-id</EM> is the number that was reported to you by
b94498cf 187the <B>lp</B> or <B>lpstat</B> commands. <i>Destination</i> is the
188name of a printer or class that you want to actually print the job.
189
190<BLOCKQUOTE><B>Note:</B>
191
192<P>The <B>lpmove</B> command is located in the system command
193directory (typically <VAR>/usr/sbin</VAR> or <VAR>/usr/local/sbin</VAR>),
194and so may not be in your command path. Specify the full path to the
195command if you get a "command not found" error, for example:
196
197<PRE CLASS="command">
198/usr/sbin/lpmove foo-123 bar
199</PRE>
200
201</BLOCKQUOTE>
202
203
4744bd90 204<H2 CLASS="title"><A NAME="OPTIONS">Standard Printing Options</A></H2>
205
206<P>The following options apply when printing all types of
207files.</P>
208
209<H3><A NAME="MEDIA">Selecting the Media Size, Type, and Source</A></H3>
210
211<P>The <CODE>-o media=xyz</CODE> option sets the media size,
212type, and/or source:</P>
213
214<PRE CLASS="command">
215lp -o media=Letter filename
216lp -o media=Letter,MultiPurpose filename
217lpr -o media=Letter,Transparency filename
218lpr -o media=Letter,MultiPurpose,Transparency filename
219</PRE>
220
221<P>The available media sizes, types, and sources depend on the
222printer, but most support the following options (case is not
223significant):</P>
224
225<UL>
226
227 <LI><CODE>Letter</CODE> - US Letter (8.5x11 inches, or 216x279mm)
228
229 <LI><CODE>Legal</CODE> - US Legal (8.5x14 inches, or 216x356mm)
230
231 <LI><CODE>A4</CODE> - ISO A4 (8.27x11.69 inches, or 210x297mm)
232
233 <LI><CODE>COM10</CODE> - US #10 Envelope (9.5x4.125 inches, or
234 241x105mm)
235
236 <LI><CODE>DL</CODE> - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)
237
238 <LI><CODE>Transparency</CODE> - Transparency media type or source
239
240 <LI><CODE>Upper</CODE> - Upper paper tray
241
242 <LI><CODE>Lower</CODE> - Lower paper tray
243
244 <LI><CODE>MultiPurpose</CODE> - Multi-purpose paper tray
245
246 <LI><CODE>LargeCapacity</CODE> - Large capacity paper tray
247
248</UL>
249
250<P>The actual options supported are defined in the printer's PPD
251file in the <CODE>PageSize</CODE>, <CODE>InputSlot</CODE>, and
252<CODE>MediaType</CODE> options. You can list them using the
253<B>lpoptions(1)</B> command:</P>
254
255<PRE CLASS="command">
256lpoptions -p printer -l
257</PRE>
258
b86bc4cf 259<P>When <CODE>Custom</CODE> is listed for the <CODE>PageSize</CODE> option, you can specify custom media sizes using one of the following forms:</P>
260
261<PRE CLASS="command">
7ff4fea9
MS
262lp -o media=Custom.<EM>WIDTH</EM>x<EM>LENGTH</EM> filename
263lp -o media=Custom.<EM>WIDTH</EM>x<EM>LENGTH</EM>in filename
264lp -o media=Custom.<EM>WIDTH</EM>x<EM>LENGTH</EM>cm filename
265lp -o media=Custom.<EM>WIDTH</EM>x<EM>LENGTH</EM>mm filename
b86bc4cf 266</PRE>
267
268<P>where "WIDTH" and "LENGTH" are the width and length of the media in points, inches, centimeters, or millimeters, respectively.</P>
269
270
4744bd90 271<H3><A NAME="ORIENTATION">Setting the Orientation</A></H3>
272
273<P>The <CODE>-o landscape</CODE> option will rotate the page 90
274degrees to print in landscape orientation:</P>
275
276<PRE CLASS="command">
277lp -o landscape filename
278lpr -o landscape filename
279</PRE>
280
281<P>The <CODE>-o orientation-requested=N</CODE> option rotates the
282page depending on the value of N:</P>
283
284<UL>
285
286 <LI><CODE>-o orientation-requested=3</CODE> - portrait
287 orientation (no rotation)</LI>
288
289 <LI><CODE>-o orientation-requested=4</CODE> - landscape
290 orientation (90 degrees)</LI>
291
292 <LI><CODE>-o orientation-requested=5</CODE> - reverse
293 landscape or seascape orientation (270 degrees)</LI>
294
295 <LI><CODE>-o orientation-requested=6</CODE> - reverse
296 portrait or upside-down orientation (180 degrees)</LI>
297
298</UL>
299
7ff4fea9 300
4744bd90 301<H3><A NAME="SIDES">Printing On Both Sides of the Paper</A></H3>
302
303<P>The <CODE>-o sides=two-sided-short-edge</CODE> and <CODE>-o
304sides=two-sided-long-edge</CODE> options will enable two-sided
305printing on the printer if the printer supports it. The <CODE>-o
306sides=two-sided-short-edge</CODE> option is suitable for
307landscape pages, while the <CODE>-o
308sides=two-sided-long-edge</CODE> option is suitable for portrait
309pages:</P>
310
311<PRE CLASS="command">
312lp -o sides=two-sided-short-edge filename
313lp -o sides=two-sided-long-edge filename
314lpr -o sides=two-sided-long-edge filename
315</PRE>
316
317<P>The default is to print single-sided:</P>
318
319<PRE CLASS="command">
320lp -o sides=one-sided filename
321lpr -o sides=one-sided filename
322</PRE>
323
7ff4fea9 324
4744bd90 325<H3><A NAME="JOBSHEETS">Selecting the Banner Page(s)</A></H3>
326
eac3a0a0 327<P>The <CODE>-o job-sheets=start,end</CODE> option sets the banner
4744bd90 328page(s) to use for a job:</P>
329
330<PRE CLASS="command">
331lp -o job-sheets=none filename
332lp -o job-sheets=standard filename
333lpr -o job-sheets=classified,classified filename
334</PRE>
335
336<P>If only one banner file is specified, it will be printed
337before the files in the job. If a second banner file is
338specified, it is printed after the files in the job.</P>
339
340<P>The available banner pages depend on the local system
341configuration; CUPS includes the following banner files:</P>
342
343<UL>
344
345 <LI><CODE>none</CODE> - Do not produce a banner page.
346
347 <LI><CODE>classified</CODE> - A banner page with a "classified"
348 label at the top and bottom.
349
350 <LI><CODE>confidential</CODE> - A banner page with a
351 "confidential" label at the top and bottom.
352
353 <LI><CODE>secret</CODE> - A banner page with a "secret" label
354 at the top and bottom.
355
356 <LI><CODE>standard</CODE> - A banner page with no label at the
357 top and bottom.
358
359 <LI><CODE>topsecret</CODE> - A banner page with a "top secret"
360 label at the top and bottom.
361
362 <LI><CODE>unclassified</CODE> - A banner page with an
363 "unclassified" label at the top and bottom.
364
365</UL>
366
b86bc4cf 367
7ff4fea9
MS
368<H3><A NAME="JOBHOLDUNTIL">Holding Jobs for Later Printing</A></H3>
369
370<P>The <CODE>-o job-hold-until=when</CODE> option tells CUPS to
371delay printing until the "when" time, which can be one of the
372following:</P>
373
374<UL>
375
376 <LI><CODE>-o job-hold-until=indefinite</CODE>; print only
377 after released by the user or an administrator</LI>
378
379 <LI><CODE>-o job-hold-until=day-time</CODE>; print from
380 6am to 6pm local time</LI>
381
382 <LI><CODE>-o job-hold-until=night</CODE>; print from
383 6pm to 6am local time</LI>
384
385 <LI><CODE>-o job-hold-until=second-shift</CODE>; print from
386 4pm to 12am local time</LI>
387
388 <LI><CODE>-o job-hold-until=third-shift</CODE>; print from
389 12am to 8am local time</LI>
390
391 <LI><CODE>-o job-hold-until=weekend</CODE>; print on Saturday
392 or Sunday</LI>
393
394 <LI><CODE>-o job-hold-until=HH:MM</CODE>; print at the specified
395 UTC time</LI>
396
397</UL>
398
399<H3><A NAME="RELEASEJOB">Releasing Held Jobs</A></H3>
400
401<P>Aside from the web interface, you can use the <B>lp</B> command
402to release a held job:</P>
403
404<PRE CLASS="command">
405lp -i <em>job-id</em> -H resume
406</PRE>
407
408<P>where "job-id" is the job ID reported by the <B>lpstat</B>
409command.</P>
410
411
412<H3><A NAME="JOBPRIORITY">Setting the Job Priority</A></H3>
413
414<P>The <CODE>-o job-priority=NNN</CODE> option tells CUPS to
415assign a priority to your job from 1 (lowest) to 100 (highest),
416which influences where the job appears in the print queue. Higher
417priority jobs are printed before lower priority jobs, however
418submitting a new job with a high priority will not interrupt an
c8fef167 419already printing job.</P>
7ff4fea9
MS
420
421
b86bc4cf 422<H3><A NAME="OUTPUTORDER">Specifying the Output Order</A></H3>
423
424<P>The <CODE>-o outputorder=normal</CODE> and <CODE>-o outputorder=reverse</CODE> options specify the order of the pages. Normal order prints page 1 first, page 2 second, and so forth. Reverse order prints page 1 last.</P>
425
426
4744bd90 427<H3><A NAME="PAGERANGES">Selecting a Range of Pages</A></H3>
428
429<P>The <CODE>-o page-ranges=pages</CODE> option selects a range
430of pages for printing:</P>
431
432<PRE CLASS="command">
433lp -o page-ranges=1 filename
434lp -o page-ranges=1-4 filename
435lp -o page-ranges=1-4,7,9-12 filename
436lpr -o page-ranges=1-4,7,9-12 filename
437</PRE>
438
439<P>As shown above, the <CODE>pages</CODE> value can be a single page, a
440range of pages, or a collection of page numbers and ranges separated by
441commas. The pages will always be printed in ascending order, regardless
442of the order of the pages in the <CODE>page-ranges</CODE> option.
443
444<P>The default is to print all pages.
445
52f6f666
MS
446<blockquote><b>Note:</b>
447
448<p>The page numbers used by <code>page-ranges</code> refer to the output
449pages and not the document's page numbers. Options like <code>number-up</code>
450can make the output page numbering not match the document page numbers.</p>
451
452</blockquote>
453
454
4744bd90 455<H3><A NAME="NUMBERUP">N-Up Printing</A></H3>
456
457<P>The <CODE>-o number-up=value</CODE> option selects N-Up
458printing. N-Up printing places multiple document pages on a
459single printed page. CUPS supports 1, 2, 4, 6, 9, and 16-Up
460formats; the default format is 1-Up:</P>
461
462<PRE CLASS="command">
463lp -o number-up=1 filename
464lp -o number-up=2 filename
465lp -o number-up=4 filename
466lpr -o number-up=16 filename
467</PRE>
468
469<P>The <CODE>-o page-border=value</CODE> option chooses the
470border to draw around each page:</P>
471
472<UL>
473 <LI><CODE>-o page-border=double</CODE>; draw two hairline borders around each page</LI>
474 <LI><CODE>-o page-border=double-thick</CODE>; draw two 1pt borders around each page</LI>
475 <LI><CODE>-o page-border=none</CODE>; do not draw a border (default)</LI>
476 <LI><CODE>-o page-border=single</CODE>; draw one hairline border around each page</LI>
477 <LI><CODE>-o page-border=single-thick</CODE>; draw one 1pt border around each page</LI>
478</UL>
479
480<P>The <CODE>-o number-up-layout=value</CODE> option chooses the
481layout of the pages on each output page:</P>
482
483<UL>
484 <LI><CODE>-o number-up-layout=btlr</CODE>; Bottom to top, left to right</LI>
485 <LI><CODE>-o number-up-layout=btrl</CODE>; Bottom to top, right to left</LI>
486 <LI><CODE>-o number-up-layout=lrbt</CODE>; Left to right, bottom to top</LI>
487 <LI><CODE>-o number-up-layout=lrtb</CODE>; Left to right, top to bottom (default)</LI>
488 <LI><CODE>-o number-up-layout=rlbt</CODE>; Right to left, bottom to top</LI>
489 <LI><CODE>-o number-up-layout=rltb</CODE>; Right to left, top to bottom</LI>
490 <LI><CODE>-o number-up-layout=tblr</CODE>; Top to bottom, left to right</LI>
491 <LI><CODE>-o number-up-layout=tbrl</CODE>; Top to bottom, right to left</LI>
492</UL>
493
ed6e7faf 494<H3><A NAME="FIT_TO_PAGE">Scaling to Fit</A></H3>
4744bd90 495
ed6e7faf 496<P>The <CODE>-o fit-to-page</CODE> option specifies that the document
4744bd90 497should be scaled to fit on the page:</P>
498
499<PRE CLASS="command">
ed6e7faf
MS
500lp -o fit-to-page filename
501lpr -o fit-to-page filename
4744bd90 502</PRE>
503
504<P>The default is to use the size specified in the file.</P>
505
7ff4fea9
MS
506<BLOCKQUOTE><B>Note:</B>
507
508<P>This feature depends upon an accurate size in
4744bd90 509the print file. If no size is given in the file, the page may be
7ff4fea9
MS
510scaled incorrectly!
511
512</BLOCKQUOTE>
513
514<H3><A NAME="OUTPUTORDER">Printing in Reverse Order</A></H3>
515
516<P>The <CODE>-o outputorder=reverse</CODE> option will print the
517pages in reverse order:</P>
518
519<PRE CLASS="command">
520lp -o outputorder=reverse filename
521lpr -o outputorder=reverse filename
522</PRE>
523
524<P>Similarly, the <CODE>-o outputorder=normal</CODE> option will
525print starting with page 1:</P>
526
527<PRE CLASS="command">
528lp -o outputorder=normal filename
529lpr -o outputorder=normal filename
530</PRE>
531
532<P>The default is <CODE>-o outputorder=normal</CODE> for
533printers that print face down and <CODE>-o outputorder=reverse</CODE>
534for printers that print face up.
535
536<H3><A NAME="MIRROR">Printing Mirrored Pages</A></H3>
537
538<P>The <CODE>-o mirror</CODE> option flips each page along the
c8fef167 539vertical axis to produce a mirrored image:</P>
7ff4fea9
MS
540
541<PRE CLASS="command">
542lp -o mirror filename
543lpr -o mirror filename
544</PRE>
545
546<P>This is typically used when printing on T-shirt transfer
547media or sometimes on transparencies.</P>
4744bd90 548
4744bd90 549</BODY>
550</HTML>