Voici un truc qui marche sous centos, avoir sur esxi
répertoire de test
# ls -la /root/test
total 12
drwxr-xr-x 2 root root 4096 mai 14 11:56 .
drwxr-x--- 9 root root 4096 mai 14 12:11 ..
-rw-r--r-- 1 root root 0 mai 14 11:56 00001111.vmdk
-rw-r--r-- 1 root root 0 mai 14 11:56 0000.vmdk
-rw-r--r-- 1 root root 0 mai 14 11:55 test.vmdk
-rw-r--r-- 1 root root 0 mai 14 11:56 ti ti.vmdk
exclusions
# find /root/test -type f ! -name \*0000\* -name \*vmdk
/root/test/ti ti.vmdk
/root/test/test.vmdk
sauvegarde
# find /root/test -type f ! -name \*0000\* -name \*vmdk | tar -czvf
/root/vm2.tgz --files-from=-
tar: Retrait de « / » de tête des noms des membres
/root/test/ti ti.vmdk
/root/test/test.vmdk
il faut que ton tar supporte --files-from=-
il faut absolument échapper les * dans find !!
@+
Manu
Le 14 mai 2012 11:01, Patrick Proniewski <patpro@???> a écrit :
> On 14 mai 2012, at 10:33, Fabien COMBERNOUS wrote:
>
> > Bon attention, je sort l'option de la mort qui tue de find, nommmé -exec
> :
> >
> > find /répertoire/ -type f ! -name "0000" -name "*vmdk" -exec tar rf
> archive.tar {} \;
> >
> > sous-titre : trouver dans le chemin répertoire des fichiers dont le nom
> ne contient pas 0000 et finissent par vmdk, quand ces conditions matchent
> ajouter le dit fichier dans l'archive archive.tar.
> >
> > Je n'ai pas testé dans busybox puisque visiblement cela varie d'une
> version à l'autre.
>
> j'ai testé avec un exec ls {} \; sur un ESXi 4.truc, et ça marche. Reste à
> tester avec le tar
>
>
> patpro
> _______________________________________________
> archives :
> http://listes.patpro.net/list/sshfr.fr.html
> http://listes.patpro.net/mailman/listinfo/script_shell_fr
>
>
_______________________________________________
archives :
http://listes.patpro.net/list/sshfr.fr.html
http://listes.patpro.net/mailman/listinfo/script_shell_fr