Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2752 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  shell [ script ] [ find -exec ] avec un [ tar ~~~ ] SOS

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

shell [ script ] [ find -exec ] avec un [ tar ~~~ ] SOS

n°231719
kuroineko
je mamgerais bien un truc la..
Posté le 21-10-2002 à 12:18:59  profilanswer
 

un script qui fait:


.....
for SERVEUR in /truc/machin/liste_serveur
do
 rsh $SERVEUR find /var/.../machin -size +8196k -exec mv {} /tmp \;
 .....
done


ca ca marche
mais le but etant de compresser le fichier plutot que de l'envoyer dans /tmp pour libere de l'espace sur le disque /var
je pensais faire  


.....
for SERVEUR in /truc/machin/liste_serveur
do
 ....
 rsh $SERVEUR find /var/.../machin -size +8196k -exec tar cvf {}.tar {} \;
 .....
done


dans l'idee mais j'obtient un fichier nome {}.tar d'ou probleme
si vous avez une idee...


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
mood
Publicité
Posté le 21-10-2002 à 12:18:59  profilanswer
 

n°231786
_Mac_
Posté le 21-10-2002 à 13:34:53  profilanswer
 

1ère chose : déjà, tar ne compresse pas, il permet d'agréger des fichiers en une seule archive compacte. Pour compresser, généralement, on associe tar avec gzip.
 
Ensuite, le paramètre de tar qui suit le cvf est le nom de l'archive à créer. mettre {}.tar signifie bien pour tar "créer un fichier tar nommé {}.tar comtenant les fichiers qui suivent [i.e. les fichiers trouvés par find]".
 
Est-ce donc bien la commande tar que tu cherches à exécuter ?

n°231895
kuroineko
je mamgerais bien un truc la..
Posté le 21-10-2002 à 16:39:15  profilanswer
 

_Mac_ a écrit a écrit :

1ère chose : déjà, tar ne compresse pas, il permet d'agréger des fichiers en une seule archive compacte. Pour compresser, généralement, on associe tar avec gzip.
 
Ensuite, le paramètre de tar qui suit le cvf est le nom de l'archive à créer. mettre {}.tar signifie bien pour tar "créer un fichier tar nommé {}.tar comtenant les fichiers qui suivent [i.e. les fichiers trouvés par find]".
 
Est-ce donc bien la commande tar que tu cherches à exécuter ?




 
je sais tout ca c'est juste a titre d'exemple
 
la c'est juste en test donc je compresse pas mais mon probleme c'est bien de lancer un tar qui compresse automatiquement les fichiers trouves par le find sous le meme nom en ajoutant juste l'extention tar .
 
c'est bien la ma question quelle syntaxe employer ?
.........-exec tar options ICILAQUECAMEMANQUE_ASAVOIR.tar {} \;


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
n°232230
kuroineko
je mamgerais bien un truc la..
Posté le 22-10-2002 à 08:07:25  profilanswer
 

[:tomilou]  
bon j'ai essaye de mettre le {} entre ""
de faire rsh HOST "~~~~~~~~~"  
et pleins d'autre truc
je trouve pas  
 
help......VERY IMPORTANT INSIDE.....
 :jap:


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
n°232268
gfive
Posté le 22-10-2002 à 10:32:59  profilanswer
 

bah....tu veux les compresser individuellement, tes fichiers??? Si oui, tu fais  
 
rsh $SERVEUR find /var/.../machin -size +8196k -exec gzip {} \;
 
et t'as plus de problème...

n°232297
kuroineko
je mamgerais bien un truc la..
Posté le 22-10-2002 à 11:18:46  profilanswer
 


XXXXX(root)[INTCMX]/exploit/unix/bin>ll *.saved
-rw-rw-rw-   1 root     dba        17399 Oct 22 11:11 recup_info.ksh.saved
XXXXX(root)[INTCMX]/exploit/unix/bin>rsh YYYYY "find /ZZZZ/bin -name *.save -size +16k -exec gzip {} \;"
XXXXX(root)[INTCMX]/exploit/unix/bin>ll *.saved.gz
*.saved.gz not found
XXXXX(root)[INTCMX]/exploit/unix/bin>


comme je le pensais ca marche pas  
 
a titre provisoir j'ai creer un script brouillon à lancer a la main pour chaque serveur :


XXXXX(root)[INTCMX]/exploit/unix/bin>more util_liste_taille_mail.test_mail_comprs.ksh
#!/bin/ksh
find /var/spool/mail -size +64k -print > /tmp/size
for FILE in `cat /tmp/size`
do
        FILE_TO=`echo $FILE | cut -d:/var/spool/mail/ -f2`
                # Variable permettant de generer le nom du fichier archive
                # identique au nom du fichier trop gros + extention
        if [ `ls -l *.gz | wc -l` != 0 ]
        then
                yes | rm $FILE_TO.tar.gz
                # Si un gros fichier est a nouveau presant  
                # Creer la nouvelle sauvegarde
        fi
        tar zcvf $FILE_TO.tar $FILE
        yes | gzip -9 $FILE_TO.tar
                # Garantir l'overwrite en cas de besoin
        yes | rm $FILE  
done
yes | rm /tmp/size
                # Pour faire le menage
 
 


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  shell [ script ] [ find -exec ] avec un [ tar ~~~ ] SOS

 

Sujets relatifs
une ptite aide pour un script sur une page HTML !!! SVP facilecomment utiliser getcwd() ? en c, sous linux (shell)
Faire un script qui ferme un pop-up automatiquement .... possible ?script en bash (linux)
Script de logon d'imprimantesvariable d'Active Directory pr la creation de compte via un script VB
[PHP/MySQL] Je ne comprends pas ce qui cloche ds mon script...petite quéstion sur le script "Advanced Poll"
[JS] Petite modif de script... Aide please... 
Plus de sujets relatifs à : shell [ script ] [ find -exec ] avec un [ tar ~~~ ] SOS


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR