Création d'un .tar

Bonjour à tous,

J'essaie actuellement de créér un .tar regroupant des fichiers .gz grâce au petit shell suivant :

-bash-3.00$more MonShell_TAR
ta r cvf MesFichiers_26062010.tar MesFichiers*.gz
tar tvf MesFichiers_26062010.tar

Le souci est que j'ai enormément de .gz à mettre dans ce .tar et que l'erreur suivante apparait donc :

./MonShell_TAR: line 1: /usr/bin/tar: Arg list too long
tar: MesFichiers_26062010.tar: No such file or directory
./MonShell_TAR: line 3: /usr/bin/rm: Arg list too long

Pouvez-vous svvp éclairer ma lanterne ?

D'avance merci ;-)

Trez

5 réponses

  1. Modérateur
    Salut,

    Voir Suppression impossible : liste d'arguments trop longue dans la FAQ.
    1. Bonjour,

      Malgré la documentation (proposée par Jipicy) présente dans la FAQ, je n'ai pas reussi à adapter le xargs à mon problème...
      Quelqu'un pourrait-il me donner un coup de pouce ?

      D'avance merci ;-)

      Trez
      1. Contributeur
        bonjour,
        de quoi parles tu ?. car ton message est incompréhensible
        a+
    2. Modérateur
      find . -maxdepth 1  -type f -name "MesFichiers*.gz" -print0 | xargs -0t tar -cvf MesFichiers_26062010.tar
      1. Hello, merci pour la réponse :

        bash-3.00$ ./Mon_Zipp
        xargs: illegal option -- 0
        xargs: Usage: xargs: [-t] [-p] [-e[eofstr]] [-E eofstr] [-I replstr] [-i[replstr]] [-L #] [-l[#]] [-n # [-x]] [-s size] [cmd [args ...]]
        ./Mon_Zipp: line 2: /usr/bin/find: Arg list too long

        J'ai essayé de relancer en supprimant le -0 (juste après le xargs) et ça donne

        bash-3.00$ ./Mon_Zipp
        ./Mon_Zipp: line 2: /usr/bin/find: Arg list too long
        1. Modérateur
          Essaye sans le "-print0" et sans les arguments à "xargs" :

          find . -maxdepth 1  -type f -name "MesFichiers*.gz"  | xargs  tar -cvf MesFichiers_26062010.tar
        2. Modérateur
          Essaye aussi :

          find . -maxdepth 1  -type f -name "MesFichiers*.gz"  -exec  tar -cvf MesFichiers_26062010.tar {} \+