La lprpágina del manual dice que se puede especificar una impresora de destino con la -Pbandera.
-P destination[/instance] Prints files to the named printer.
He 'agregado' varias impresoras en recursos compartidos locales de Samba usando la GUI en Ubuntu / Gnome. ¿Cómo puedo obtener una lista de estas impresoras disponibles en el formato que la -Pbandera espera (preferiblemente de un shell bash)?

lpqtambién funciona.lpoptions -d printernamePara obtener una lista, puede usar:
o
Para imprimir solo los nombres de impresora:
lpstat + lectura + matriz:
lpstat + awk:
lpstat + corte:
cat + grep + corte en
/etc/printcap:Esto es lo que se muestra, uno por línea:
Siento que las
lpstatsoluciones son más elegantes y confiables. Principalmente porque/etc/printcapno se encontró en algunos sistemas que probé.Acerca de usar
awkocut, depende de lo que haya instalado y prefiera. La opción bash read + bash array debería funcionar en cualquier shell bash sin la necesidad de elementos externos.EDITAR: Dije que la solución marcada no funciona para mí en Amazon Linux. Pero supongo que funciona si solo quieres copiar los nombres de la impresora desde el medio del resto de la salida. Funciona igual que usar solo
lpstat -a.fuente
lpstat -p -dparece funcionar ...How can I get a list of these available printers in the format that the (lpr) -P flag expects. Mi ejemplo delpstat -p -dmuestra claramente que obtienes más que solo el nombre de la impresora con eso. En cuyo caso no puede usar esa salida para unalpr -P $PRINTERNAMEllamada. Entonces no!lpstat -p -dno funciona en el ejemplo que di.