Add print duplex script
This commit is contained in:
parent
c20349e7fd
commit
a69632ec55
56
.local/bin/print-duplex
Executable file
56
.local/bin/print-duplex
Executable file
|
@ -0,0 +1,56 @@
|
|||
#!/bin/bash
|
||||
|
||||
# @see: https://opensource.com/article/20/4/print-duplex-bash-script#!/bin/bash
|
||||
|
||||
# take any PDF file and print the odd pages first
|
||||
# THEN, ask the user to put the paper back in the printer, face down
|
||||
# THEN, print even pages
|
||||
|
||||
# take the default printer from the cups configuration
|
||||
# OR manually set it
|
||||
_PRINTER="HP_LaserJet_1022"
|
||||
#_PRINTER=$(grep DefaultPrinter -i /etc/cups/printers.conf | awk {'print$2'} | sed -e "s/>//")
|
||||
|
||||
if [ "$#" -lt "1" ]
|
||||
then
|
||||
echo -e "Document to print is required."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
_DOCUMENT_COUNT=$#
|
||||
_INDEX=1
|
||||
|
||||
_print() {
|
||||
lpr -P $_PRINTER -o $@ "$_DOCUMENT"
|
||||
}
|
||||
|
||||
_log() {
|
||||
echo ${_DOCUMENT} - $1
|
||||
}
|
||||
|
||||
_print_document() {
|
||||
_log "Printing even pages"
|
||||
_print page-set=even -o outputorder=reverse
|
||||
|
||||
_log "Place paper back into the printer in EXACT OUTPUT ORDER (face down in tray) then press ENTER"
|
||||
read _IS_DONE
|
||||
|
||||
_log "Printing odd pages"
|
||||
_print page-set=odd -o orientation-requested=6
|
||||
}
|
||||
|
||||
_wait_between_documents() {
|
||||
if [ "$_INDEX" -lt "$_DOCUMENT_COUNT" ]
|
||||
then
|
||||
_log "Press ENTER when document is finished printing ($_INDEX) $_DOCUMENT_COUNT"
|
||||
read _IS_DONE
|
||||
|
||||
((_INDEX++))
|
||||
fi
|
||||
}
|
||||
|
||||
for _DOCUMENT in $@
|
||||
do
|
||||
_print_document
|
||||
_wait_between_documents
|
||||
done
|
Loading…
Reference in a new issue