11 de jul de 2012

Definindo uma impressora padrão no shell

Em um ambiente Linux tradicionalmente utilizamos impressoras no ambiente gráfico, seja Gnome, LXDE, Icwm, etc, sendo que ao comando de impressão (CTRL+p) por exemplo, o sistema nos apresenta as impressoras instaladas e sugere aquela que for padrão, incluindo saida para arquivo ou pdf. Dentro deste contexto as impressoras apresentadas são aquelas configuradas no seu cups e desta forma, podem estar conectadas em qualquer ponto da rede. Estas impressoras não são vistas pelo shell necessitando somente de uma configuração muito simples que descrevo abaixo. A propósito, impressão via linha de comando, mutt ou editor vim, ou simplesmente ls | lpr, ficam mais transparentes desta forma.

Localize o nome da sua impressora. Isto pode ser feito verificando o seu arquivo printers.conf em /etc/cups/printers.conf:

sudo vi /etc/cups/printers.conf e procure no inicio da seção de configuração de cada impressora o nome que aparece entre <  >, como , neste caso o  nome da impressora é HP-LaserJet-1022.

Agora, no shell do sistema, defina a variável PRINTER=HP-LaserJet-1022 e exporte a variável para que as aplicações enxerguem o nome da impressora (export PRINTER);

PRINTER=HP-LaserJet-1022 ; export PRINTER

Para conferir se a variável $PRINTER está associada à sua impressora, utilize o comando echo $PRINTER

Para que as configurações sejam permanentes, insira estes parâmetros no seu .bashrc.