그만큼 lpr
맨 페이지에 대상 프린터가 -P
깃발.
-P destination[/instance] Prints files to the named printer.
나는 Ubuntu / Gnome의 GUI를 사용하여 로컬 Samba 공유에 다양한 프린터를 추가했습니다. 사용 가능한 프린터 목록을 -P
플래그는 (아마도 bash 쉘에서) 바람직합니까?
그만큼 lpr
맨 페이지에 대상 프린터가 -P
깃발.
-P destination[/instance] Prints files to the named printer.
나는 Ubuntu / Gnome의 GUI를 사용하여 로컬 Samba 공유에 다양한 프린터를 추가했습니다. 사용 가능한 프린터 목록을 -P
플래그는 (아마도 bash 쉘에서) 바람직합니까?
답변:
$ lpstat -p -d
로부터 컵 설명서 .
lpoptions -d printername
lpstat -a
또는
cat /etc/printcap
lpstat + 읽기 + 배열 :
$ while read l; do l=($l); echo "${l[0]}"; done <<< "$(lpstat -a)"
lpstat + awk :
$ lpstat -a | awk '{print $1}'
lpstat + cut :
$ lpstat -a | cut -f1 -d ' '
고양이 + grep + 인하 /etc/printcap
:
$ cat /etc/printcap | cut -f1 -d'|' | grep '^#' -v
이것은 한 줄에 하나씩 표시됩니다.
HP_LaserJet_P1606dn
HP_Deskjet_2540_series
HP_LaserJet_M1212nf
GCP-Save_to_Google_Docs
나는 마치 lpstat
솔루션은보다 우아하고 신뢰할 수 있습니다. 대체로 /etc/printcap
내가 테스트 한 일부 시스템에서는 발견되지 않았습니다.
사용 방법 awk
또는 cut
, 당신이 설치하고 선호하는 것에 달려 있습니다. bash read + bash array 옵션은 외부를 필요로하지 않고 모든 bash 쉘에서 작동해야합니다.
편집하다 : 표시된 솔루션이 Amazon Linux에서 저에게 아무런 효과가 없다고 말했습니다. 하지만 출력의 나머지 부분에서 프린터 이름을 복사하려는 경우 작동하는 것 같아요. 사용하는 것과 똑같이 작동합니다. lpstat -a
.
$ lpstat -p -d
printer HP_Deskjet_2540_series is idle. enabled since Tue 22 Dec 2015 01:12:10 PM BRST
. . .
printer GCP-Save_to_Google_Docs is idle. enabled since Tue 15 Dec 2015 02:13:33 AM BRST
system default destination: HP_LaserJet_P1606dn
lpstat -p -d
작동하는 것 같습니다 ...
How can I get a list of these available printers in the format that the (lpr) -P flag expects
. 나의 예 lpstat -p -d
분명히 그걸로 프린터 이름 이상을 얻는다는 것을 분명하게 보여줍니다. 어떤 경우에는 해당 출력을 사용할 수 없습니다. lpr -P $PRINTERNAME
요구. 그래서 아니야! lpstat -p -d
내가 준 예제에서 작동하지 않습니다.
lpq
너무 일합니다.