shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Dúvida em performance de script.


From: Jeiks
Subject: Re: [shell-script] Dúvida em performance de script.
Date: Thu, 14 Jul 2011 11:35:49 -0300

Eu utilizaria assim:

dpkg -l | awk '{if ($1 == "ii") print $2}' | xargs -L 1 -i bash -c "grep -q
{} $FILEBASE && echo {} >> $RESULTADO"

abs

Em 14 de julho de 2011 10:25, Bruno Viana <address@hidden> escreveu:

> **
>
>
>
> Pessoal,
>
> Estou querendo saber se
> tem uma forma de escrever um script com uma performance melhor do que
> eu fiz.
>
> Estou com a necessidade
> de comparar os pacotes instalados em uma máquina (resultado de um
> dpkg -l ) com uma lista fixa de pacotes. O problema é que são
> basicamente 2mil pacotes para comparar, logo 2mil x 2mil comparações.
>
> Para isso fiz aqui
> rápido o seguinte script.
>
> ########## INICIO
> #############
> #!/bin/bash
> FILEBASE=lista-base # Arquivo texto base para comparação
> RESULT=resultado-comparacao # Arquivo com os pacotes instalado que não
> estão na lista-base
>
> for c in $( dpkg -l |
> awk -F" " '{print $2}' ); do
>     achou=0
>
>     for b in $(cat
> $FILEBASE); do
>          if [
> "$c" == "$b" ]; then
>
>                achou=1
>          fi
>    done
>
>    if [ "$achou"
> -eq 0 ]; then
>           echo $c
> >> $RESULT
>    fi
> done
> ############ FIM
> ##############
>
> Queria saber se tem uma
> forma mais eficiente de se fazer isso, pois da forma que está encontro o
> resultado correto porem depois de 2 mim basicamente.
>
> Desde já agradeço a
> atenção.
>
>
> Ass.: Bruno Ferreira Viana
> ITIL® Foundation V3
> Linux User #467046
> Tel.: 71 88133036
> MSN: address@hidden
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Jacson R. C. Silva
http://jeiks.net
http://lattes.cnpq.br/0637308986252382


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]