Filtrando trabalhos de impressão...
Publicado por Marcelo de Souza Sant´Anna 27/03/2005
[ Hits: 4.665 ]
Homepage: http://paginas.terra.com.br/informatica/marcelosantanna
Este script filtra os trabalhos de impressão entre o samba e o cups.
Lembre-se de colocar este script em /usr/bin
Instale o CUPS e configure uma impressora. Ex printer1
Instale o SAMBA e compartilhe esta, acrescentando estas linhas no smb.conf:
...
[printer1]
...
printer name = printer1
print command = echo "`date`*%p*%f*%J*%z*%c*%u*%m--%M" >> /tmp/smbprnprinter1; \
prnfltprinter1; \
lp -d %p %f; rm %f
#!/bin/bash # Arquivo de log criado pelo samba, cujo conteudo e: # DATA*IMPRESSORA*TRABALHO*TITULO*TAMANHO*PAGINAS*USUARIO*COMPUTADOR # # DATA - Contem a data atual, no momento do pedido de impressao # IMPRESSORA - Contem o nome da impressora # TRABALHO - Contem o nome do trabalho gerado pelo samba # TITULO - Contem o nome do titulo do documento # TAMANHO - Contem o tamanho, em Kilobytes, do documento # PAGINAS - Contem o numero de paginas pedidas.(Dependendo do gerenciador) # USUARIO - Contem o nome do usuario que esta fazendo o pedido a impressao # COMPUTADOR - Contem o nome do computador, seguido do endereco IP, que esta solicitando a impressao. # # EXEMPLO: # # Mon Oct 25 04:54:38 BRST 2004*printer1*smbprn.00002172.ZFpgbN*Evol*2945k*0*santanna*cir-santanna--192.168.0.10 # # INLOGTOT=/tmp/smbprnprinter1 # verifica se o arquivo existe if [[ -e $INLOGTOT ]] then # variavel TLINHAS recebe o total de linhas TLINHAS=$(wc -l $INLOGTOT | cut -d " " -f1) # cria um loop, o numero de vezes de acordo com a quantidade de linhas for LINHA in $(seq 1 $TLINHAS) do # recebe o conteudo de cada linha, uma por loop. CONTEUDOLINHA=$(head -n $LINHA $INLOGTOT | tail -n 1) # variavel TRABALHO recebe o nome do trabalho, do documento, gerado pelo samba TRABALHO=$(echo $CONTEUDOLINHA | cut -d "*" -f3) # variavel TITULO recebe o titulo do documento TITULO=$(echo $CONTEUDOLINHA | cut -d "*" -f4) # Todos os trabalhos que nao tiverem no titulo algumas destas palavras serao excluidos... if [[ $(echo $TITULO | egrep -i -v '(evol|seagate|report|viewer|preview|client)') ]] then rm -f /var/spool/samba/$TRABALHO fi done rm -f $INLOGTOT fi
arrcomb: Gerando Arranjos e Combinações
Localizar e excluir linhas repetidas em um arquivo texto
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - CALCULA O % DE USO DA QUOTA E ATUALIZA BANCO
Script para iniciar programas instalados no wine
Nenhum coment�rio foi encontrado.
Customizar a Instalação do Linux Debian com Preseed
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Linux Debian 11 Bullseye Reiniciando Sozinho (2)
O que você está ouvindo agora? [2] (194)
Bora fazer um teste? mbti (12)
Possível Migração de windows para linux ???? (pc da empresa) (2)