Reinicia trabalhos CUPS

Publicado por Rogério Tomassoni (última atualização em 24/03/2010)

[ Hits: 6.005 ]

Homepage: www.my.opera.com/tomassoni

Download reiniciaTrabalhosCups.sh




Script que reinicia todos os trabalhos de uma determinada fila de impressão do CUPS de uma única vez.

  



Esconder código-fonte

#!/bin/bash

# Variaveis
# Arquivo temporario
tmp_jobs="/tmp/$1-jobscups"

# Testa se o argumento com nome da fila foi informado
if [ -z $1  ]; then
   echo -e " {FONTE}33[40;33mERRO! - Informe uma fila como argumento. Ex: $0 <fila>{FONTE}33[m"
   sleep 3;
   exit 1;    
fi

# Exibi um cabecario com o nome da fila manipulada
echo -e "         Manipulando fila:{FONTE}33[40;33m $1{FONTE}33[m"

# Verifica todos os trabalhos parados
jobs=$( lpq -P$1 )
echo "$jobs" > $tmp_jobs

# Zera contador 
count_job=0

# Le arquivo criado com todos os trabalhos
while read JOB; do
# Remove as linhas desnecessarias e cria um novo arquivo auxiliar
if [ $count_job -gt 1 ]; then 
    #echo "$JOB" >> $tmp_jobs_aux; 
   job_owner=$(echo "$JOB" | tr -s " " ": "| cut -d: -f2)
   job_id=$(echo "$JOB" | tr -s " " ": "| cut -d: -f3)
   echo "Reiniciando job: Job_id: $job_id - Job_owner: $job_owner"
   #Reinicia os trabalhos propriamente dito
   lp -i $job_id -H restart
   sleep 0.1
fi
count_job=`expr $count_job + 1`;

done < $tmp_jobs

# Ajusta quantidade de trabalhos manipulados
count_job=`expr $count_job - 2`;

# Exibi a quantidade de trabalho manipulado
echo -e "         Total de trabalhos manipulados - {FONTE}33[40;32m$count_job{FONTE}33[m"


# Remove arquivo temporario
rm -f $tmp_jobs

exit 0;

Scripts recomendados

Shell Script para consulta a Wikipedia utilizando linhas de comando

Instalador do Java JRE Oracle

copiar disquete

createThumbs

Configuração do Modem Sony Ericsson MD300 da Claro 3G no Linux


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts