Reinicia trabalhos CUPS

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

[ Hits: 6.018 ]

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

Estranho

verificacao de ip externo

SlackBuild para empacotar o Firefox (binário) pro Slackware

Baixar STREAMS MMS://, RTS:// e Outros...

Hora Certa


  

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