grep dans repertoire avec fichier trier par date !

grep dans repertoire avec fichier trier par date ! - Linux et OS Alternatifs

Marsh Posté le 28-09-2005 à 15:23:47    

Bonjour tout le monde,
voila mon but est de trouver par un script le dernier spool "toto" de mon imprimante virtuelle.
 
varlast=""
for l in `ls -ltr /var/spool/lp/request/lpjob/c* | awk '{print $9}'`
do
    for i in `sudo grep -l "toto" $l`
    do
        varlast=$i
   done
done
 
résultat, $varlast me récupére le spool toto le plus récent...
hélas j'ai près de 1000 fichier spool et l'éxecution de ce script prend alors 15 seconde ; alors que sans la première boucle, c'est immédiat.
Je suis obligé de trier les spools par date sinon c'est faux...
 
Quelqu'un aurait il une idée ?
 
Merci.

Reply

Marsh Posté le 28-09-2005 à 15:23:47   

Reply

Marsh Posté le 28-09-2005 à 15:33:56    

moi je trierais les fichiers par date pis je m'arrêterais dès que j'en ai trouvé un avec toto dedans. genre :
 
for i in $(ls -t /var/spool/truc/* | awk '{print $9}')
do  
    for i in `sudo grep -l "toto" $l`
    do
        varlast=$i
    done
    if [ -n $varlast ]; then break; fi
done

Reply

Marsh Posté le 28-09-2005 à 15:52:26    

Merci beaucoup, ca marche.  
c'est vrai que c'est plus logique comme cela...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed