Manuale di "lpr"

5 risposte [Ultimo messaggio]
Ritratto di franco_da_vc
franco_da_vc
(Monster)
Offline
Monster
Iscritto: 22/05/2008
Messaggi: 410

Avrei bisogno di trovare qualcosa che illustri esaudientemente il comando LPR, facendo man lpr ottengo una aiuto valido, ma non esaudiente e scaricando Appunti di informatica libera ho potuto constatare che il comando in questione è trattato ma non con sufficienti notizie.

Siccome devo implementare il comando in un programma che sto sviluppando avrei bisogno di una informazione più completa

Vi ringrazio.

Bye by AFo

Ritratto di jambolo70
jambolo70
(Geek)
Offline
Geek
Iscritto: 03/03/2012
Messaggi: 86

Ciao, di fatto la pagina dell'help in linea è quella più completa

lpr
 Section: Apple Inc. (1)
NAME
 lpr - print files
SYNOPSIS
lpr  [ -E  ] [ -H server[:port] ] [ -U  username  ] [ -P destination[/instance] ] [ -#  num-copies  [ -h  ] [ -l  ] [ -m  ] [ -o option[=value] ] [ -p  ] [ -q  ] [ -r  ] [ -C  title  ] [ -J  title  ] [ -T  title  ] [ file(s)  ]
DESCRIPTION
lpr submits files for printing. Files named on the command line are sent to the named printer or the default destination if no destination is specified. If no files are listed on the command-line, lpr reads the print file from the standard input.
THE DEFAULT DESTINATION
 CUPS provides many ways to set the default destination. The LPDEST and PRINTER environment variables 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.
OPTIONS
 The following options are recognized by lpr:
-E
 Forces encryption when connecting to the server.
-H server[:port]
 Specifies an alternate server.
-C "name"
-J "name"
-T "name"
 Sets the job name/title.
-P destination[/instance]
 Prints files to the named printer.
-U username
 Specifies an alternate username.
-# copies
 Sets the number of copies to print.
-h
 Disables banner printing. This option is equivalent to -o job-sheets=none.
-l
 Specifies that the print file is already formatted for the destination and should be sent without filtering. This option is equivalent to -o raw.
-m
 Send an email on job completion.
-o option[=value]
 Sets a job option. See "COMMON JOB OPTIONS" below.
-p
 Specifies that the print file should be formatted with a shaded header with the date, time, job name, and page number. This option is equivalent to -o prettyprint and is only useful when printing text files.
-q
 Hold job for printing.
-r
 Specifies that the named print files should be deleted after submitting them.
COMMON JOB OPTIONS
 Aside from the printer-specific options reported by the lpoptions(1) command, the following generic options are available:
-o collate=true
 Prints collated copies.
-o fit-to-page
 Scales the print file to fit on the page.
-o job-hold-until=when
 Holds the job until the specified local time. "when" can be "indefinite" to hold the until released, "day-time" to print the job between 6am and 6pm local time, "night" to print the job between 6pm and 6am local time, "second-shift" to print the job between 4pm and 12am local time, "third-shift" to print the job between 12am and 8am local time, or "weekend" to print the job on Saturday or Sunday.
-o job-hold-until=hh:mm
 Holds the job until the specified time in hours and minutes UTC.
-o job-priority=priority
 Set the priority to a value from 1 (lowest) to 100 (highest), which influences when a job is scheduled for printing. The default priority is typically 50.
-o job-sheets=name
 Prints a cover page (banner) with the document. The "name" can be "classified", "confidential", "secret", "standard", "topsecret", or "unclassified".
-o job-sheets=start-name,end-name
 Prints cover pages (banners) with the document.
-o media=size
 Sets the page size to size. Most printers support at least the size names "a4", "letter", and "legal".
-o mirror
 Mirrors each page.
-o number-up={2|4|6|9|16}
 Prints 2, 4, 6, 9, or 16 document (input) pages on each output page.
-o number-up-layout=layout
 Specifies the layout of pages with the "number-up" option. The "layout" string can be "btlr", "btrl", "lrbt", "lrtb", "rlbt", "rltb", "tblr", or "tbrl" - the first two letters determine the column order while the second two letters determine the row order. "bt" is bottom-to-top, "lr" is left-to-right, "rl" is right-to-left, and "tb" is top-to-bottom.
-o orientation-requested=4
 Prints the job in landscape (rotated 90 degrees counter-clockwise).
-o orientation-requested=5
 Prints the job in landscape (rotated 90 degrees clockwise).
-o orientation-requested=6
 Prints the job in reverse portrait (rotated 180 degrees).
-o outputorder=reverse
 Prints pages in reverse order.
-o page-border=border
 Prints a border around each document page. "border" is "double", "double-thick", "single", or "single-thick".
-o page-ranges=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 pages.
-o sides=one-sided
 Prints on one side of the paper.
-o sides=two-sided-long-edge
 Prints on both sides of the paper for portrait output.
-o sides=two-sided-short-edge
 Prints on both sides of the paper for landscape output.
NOTES
 The -c, -d, -f, -g, -i, -n, -t, -v, and -w options are not supported by CUPS and produce a warning message if used.
EXAMPLES
 Print two copies of a document to the default printer:
 
    lpr -# 2 filename
 
 
 Print a double-sided legal document to a printer called "foo":
 
    lpr -P foo -o media=legal -o sides=two-sided-long-edge filename
 
 
 Print a presentation document 2-up to a printer called "foo":
 
    lpr -P foo -o number-up=2 filename
 
SEE ALSO
cancel(1), lp(1), lpadmin(8), lpoptions(1), lpq(1), lprm(1), lpstat(1), CUPS Online Help (http://localhost:631/help)
COPYRIGHT
 Copyright © 2007-2017 by Apple Inc.

Oppure ho trovato se può esserti utile
http://linuxand.blogspot.com/2007/06/lpr-options.html
riporto per comodità

lpr options
Il vero utente linux che vuole stampare un file non apre il menù "file" e clicca su "Stampa..." :) Il vero utente linux usa il comando lpr! La sintassi standard è
 
lpr nomefile
 
e fin qua tutto ok. I problemi nascono quando si vogliono fare "cose più complicate" tipo stampare fronte/retro o cambiare stampante. Ecco allora le opzioni più utili che purtroppo non si trovano nella pagina del manuale di lpr (man lpr).
 
Per utilizzare una stampante particolare (non quella predefinita)
 
lpr -P nomestampante nomefile
 
Per stampare fronte-retro:
 
lpr -o sides=two-sided-long-edge nomefile
lpr -o sides=two-sided-short-edge nomefile
 
Per ruotare l'orientazione della pagina di 90°
 
lpr -o landscape nomefile
 
Per selezionare le pagine da stampare
 
lpr -o page-ranges=1-4,7,9-12 nomefile
 
Per stampare le pagine pari o le dispari
 
lpr -o page-set=even nomefile
lpr -o page-set=odd nomefile
 
Per selezionare il numero di pagine per foglio
 
lpr -o number-up=1 nomefile
lpr -o number-up=2 nomefile
lpr -o number-up=4 nomefile
lpr -o number-up=16 nomefile
 
Per selezionare l'ordine di uscita delle pagine
 
lpr -o outputorder=normal nomefile
lpr -o outputorder=reverse nomefile
 
Tutte le opzioni possono essere combinate in un unico comando. Ad esempio
 
lpr -o sides=two-sided-short-edge -o number-up=2 nomefile
 
stampa due pagine per foglio fronte/retro (comodo per i libri).
 
Queste sono solo le opzioni più comuni. Ovviamente le parole in corsivo vanno sostituite secondo le esigenze.

Principali utilizzi del comando lpr:

  1. Stampa di un file: Puoi utilizzare il comando lpr seguito dal nome del file che desideri stampare. Ad esempio, se hai un file chiamato "documento.txt", puoi eseguire il comando lpr documento.txt per inviare il file alla stampante predefinita.
  2. Specificare una stampante: Se hai più di una stampante disponibile nel tuo sistema, puoi utilizzare l'opzione -P seguita dal nome della stampante desiderata. Ad esempio, lpr -P stampante-ufficio documento.txt invierà il file "documento.txt" alla stampante chiamata "stampante-ufficio".
  3. Impostare il numero di copie: Puoi specificare il numero di copie che desideri stampare utilizzando l'opzione -#. Ad esempio, lpr -#3 documento.txt invierà 3 copie del file "documento.txt" alla stampante predefinita.
  4. Impostare l'orientamento della pagina: Puoi specificare l'orientamento della pagina utilizzando l'opzione -o. Ad esempio, lpr -o landscape documento.txt imposterà l'orientamento della pagina su orizzontale (landscape) per il file "documento.txt".

-P printername: Specifica il nome della stampante a cui inviare il lavoro di stampa.
-#copies: Specifica il numero di copie da stampare.
-C class: Specifica la classe di stampanti a cui inviare il lavoro di stampa.
-J jobname: Specifica il nome del lavoro di stampa.
-T title: Specifica il titolo del lavoro di stampa.
-U username: Specifica il nome utente del proprietario del lavoro di stampa.
-h: Stampa l'output in formato "banner" con informazioni sull'utente, la data e l'ora.
-m: Invia una mail all'utente quando il lavoro di stampa è completato o se si verifica un errore.
-o option: Specifica opzioni di formattazione aggiuntive per la stampa, come l'orientamento della pagina o la dimensione della carta.
-q priority: Specifica la priorità del lavoro di stampa. I valori validi vanno da 1 (più alta priorità) a 100 (più bassa priorità).
-r: Rimuove automaticamente il file di input dopo che il lavoro di stampa è stato inviato alla stampante.
-s: Attiva la modalità silenziosa, che non visualizza alcun output sulla console.
-S server: Specifica il nome del server CUPS a cui inviare il lavoro di stampa.

Ritratto di franco_da_vc
franco_da_vc
(Monster)
Offline
Monster
Iscritto: 22/05/2008
Messaggi: 410

Ti ringrazio,

da quanto mi hai elencato posso pensare che ho implementato il comando nel modo esatto, resta un piccolissimo dubbio sull'orientamento della pagina, nel primo esempio, quello in inglese pone un numero a fianco dell'orientamento, dal 4 al 6, mentre quello in italiano non lo fa, ma penso che questo non abbia particolare importanza, tra parentesi è nel secondo modo che ho implementato l'istruzione.

A questo punto sto pensando che siccome la mia stampante non supporti alcune delle implementazioni che ho previsto non le consideri affatto quindi considero il tutto risolto e ti ringrazio.

Ciao

Bye by AFo

Ritratto di jambolo70
jambolo70
(Geek)
Offline
Geek
Iscritto: 03/03/2012
Messaggi: 86

Curiosità : modello e marca di stampante ?

Ritratto di franco_da_vc
franco_da_vc
(Monster)
Offline
Monster
Iscritto: 22/05/2008
Messaggi: 410

HP Color Laser Jet Pro MPFM281fdn

Bye by AFo

Ritratto di jambolo70
jambolo70
(Geek)
Offline
Geek
Iscritto: 03/03/2012
Messaggi: 86

Signora stampante, molto bella.

Non è supportata dal paccheto HPLip e HPlip-gui ?
te lo chiedo perché se è supportata dal pacchetto HPLIP
una volta installata puoi andare a vedere i parametri tramite YAST --> Stampante --> modifica

puoi andare dentro a tutti i parametri che magari sono utili per l'impostazione del comando lpr

ho messo un esempio della stampante HP che ho anch'io