Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-19 Par sujet Benoit B
Pour les détails d'exclusion, voir man bash :
If the extglob shell option is enabled using the shopt builtin, several
   extended  pattern  matching operators are recognized.  In the following
   description, a pattern-list is a list of one or more patterns separated
   by a |.  Composite patterns may be formed using one or more of the fol‐
   lowing sub-patterns:

  ?(pattern-list)
 Matches zero or one occurrence of the given patterns
  *(pattern-list)
 Matches zero or more occurrences of the given patterns
  +(pattern-list)
 Matches one or more occurrences of the given patterns
  @(pattern-list)
 Matches one of the given patterns
  !(pattern-list)
 Matches anything except one of the given patterns

Par exemple si tu veux exclure download et titi
tar -zcpvf test.tar.gz !(download|titi)

Bonne nuit,

Le dim. 19 mai 2019 à 22:50, Benoit B  a écrit :
>
> Oups je voulais écrire
>
> tar -zcpvf test.tar.gz !(download)
> Qui archivera :
> archive/
> archive/download/
> titi/
>
> et exclu le download du répertoire courent avec !()
>
> Le sam. 18 mai 2019 à 09:18, Jérémy Prego  a écrit :
> >
> > Bonjour,
> >
> > Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
> > faire quelque chose qui me parait simple en théorie mais ça me semble
> > plus compliqué en pratique.
> >
> > en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
> > mais seulement dans la racine. je m'explique
> >
> > Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
> > dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
> > s'appelant archive, et qui contient aussi un dossier download.
> >
> > Je précise que quand je fais mon tar, je suis dans ce dossier "toto".
> >
> > à force de recherche, j'ai bien trouvé une commande tar qui me
> > conviendrait, mais seul souci, l'archive comporte un premier dossier "."
> > tar --exclude='./download' -zcpvf test.tar.gz .
> >
> > j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
> > mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
> > voulu...
> >
> > du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
> > dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
> > premier dossier download.
> >
> > merci pour l'aide,
> >
> > Jerem
> >



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-19 Par sujet Benoit B
Oups je voulais écrire

tar -zcpvf test.tar.gz !(download)
Qui archivera :
archive/
archive/download/
titi/

et exclu le download du répertoire courent avec !()

Le sam. 18 mai 2019 à 09:18, Jérémy Prego  a écrit :
>
> Bonjour,
>
> Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
> faire quelque chose qui me parait simple en théorie mais ça me semble
> plus compliqué en pratique.
>
> en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
> mais seulement dans la racine. je m'explique
>
> Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
> dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
> s'appelant archive, et qui contient aussi un dossier download.
>
> Je précise que quand je fais mon tar, je suis dans ce dossier "toto".
>
> à force de recherche, j'ai bien trouvé une commande tar qui me
> conviendrait, mais seul souci, l'archive comporte un premier dossier "."
> tar --exclude='./download' -zcpvf test.tar.gz .
>
> j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
> mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
> voulu...
>
> du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
> dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
> premier dossier download.
>
> merci pour l'aide,
>
> Jerem
>



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-19 Par sujet Benoit B
Bonjour,

Voici ma proposition nocturne ! ;)

tar --exclude='./download' -zcpvf test.tar.gz !(.)

Chez moi la sortie affiche :
archive/
archive/download/
download/
titi/

Et pas :
./
./archive/
./archive/download/
./titi/

C'est bien ça que tu veux ?

Bonne nuit,

Benoit

Le sam. 18 mai 2019 à 09:18, Jérémy Prego  a écrit :
>
> Bonjour,
>
> Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
> faire quelque chose qui me parait simple en théorie mais ça me semble
> plus compliqué en pratique.
>
> en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
> mais seulement dans la racine. je m'explique
>
> Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
> dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
> s'appelant archive, et qui contient aussi un dossier download.
>
> Je précise que quand je fais mon tar, je suis dans ce dossier "toto".
>
> à force de recherche, j'ai bien trouvé une commande tar qui me
> conviendrait, mais seul souci, l'archive comporte un premier dossier "."
> tar --exclude='./download' -zcpvf test.tar.gz .
>
> j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
> mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
> voulu...
>
> du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
> dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
> premier dossier download.
>
> merci pour l'aide,
>
> Jerem
>



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-19 Par sujet Cyrille Bollu
Ben “.” C’est le dossier courant, celui dans lequel tu te trouves. Il existe 
toujours.

“.” C’est le dossier courant.

“..” c’est le dossier supérieur.

C’est du standard (POSIX je crois)

Cyrille

> Le 19 mai 2019 à 06:45, Jean-Michel OLTRA  a écrit :
> 
> 
>Bonjour,
> 
> 
> Le dimanche 19 mai 2019, Jérémy Prego a écrit...
> 
> 
> 
>> hmmm, donc ça veut dire qu'on peut pas éviter ce "."  a la création de
>> l'archive directement ? c'est quand même embêtant ... en tout cas, merci
>> pour vos réponses jusqu'ici.
> 
> Quel "." ? Celui que tu vois lorsque tu fais le `tar -tv` ?
> En quoi est ce embêtant ? Lorsque tu décompresses l'archive, tout ce fait
> correctement, non ?
> 
> -- 
> jm
> 



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Jean-Michel OLTRA


Bonjour,


Le dimanche 19 mai 2019, Jérémy Prego a écrit...



> hmmm, donc ça veut dire qu'on peut pas éviter ce "."  a la création de
> l'archive directement ? c'est quand même embêtant ... en tout cas, merci
> pour vos réponses jusqu'ici.

Quel "." ? Celui que tu vois lorsque tu fais le `tar -tv` ?
En quoi est ce embêtant ? Lorsque tu décompresses l'archive, tout ce fait
correctement, non ?

-- 
jm



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Jérémy Prego
Le 18/05/2019 à 11:38, Jean-Michel OLTRA a écrit :
> Bonjour,
>
>
> Le samedi 18 mai 2019, Jérémy Prego a écrit...
>
>
>> le souci avec ma commande, c'est qu'à la création de l'archive, ça crée
>> un premier dossier "." donc je dois ouvrir ce dossier pour voir mes
>> fichiers.
> Essaie en étant dans le répertoire au dessus de toto, puis :
>
> tar -xzf toto.tar.gz -C toto --exclude ./downloads
> tar -tvzf toto.tar.gz
> mkdir tata
> cd tata
> tar -xzf ../toto.tar.gz

> hmmm, donc ça veut dire qu'on peut pas éviter ce "."  a la création de 
> l'archive directement ? c'est quand même embêtant ... en tout cas, merci pour 
> vos réponses jusqu'ici.

Jerem



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Jean-Michel OLTRA


Bonjour,


Le samedi 18 mai 2019, Jérémy Prego a écrit...


> le souci avec ma commande, c'est qu'à la création de l'archive, ça crée
> un premier dossier "." donc je dois ouvrir ce dossier pour voir mes
> fichiers.

Essaie en étant dans le répertoire au dessus de toto, puis :

tar -xzf toto.tar.gz -C toto --exclude ./downloads
tar -tvzf toto.tar.gz
mkdir tata
cd tata
tar -xzf ../toto.tar.gz

-- 
jm



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Cyrille Bollu
‘Comprend pas: c’est quoi le problème avec ta commande? Elle n’exclut pas le 
1er dossier download, c’est ça?

> Le 18 mai 2019 à 09:18, Jérémy Prego  a écrit :
> 
> Bonjour,
> 
> Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
> faire quelque chose qui me parait simple en théorie mais ça me semble
> plus compliqué en pratique.
> 
> en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
> mais seulement dans la racine. je m'explique
> 
> Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
> dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
> s'appelant archive, et qui contient aussi un dossier download.
> 
> Je précise que quand je fais mon tar, je suis dans ce dossier "toto".
> 
> à force de recherche, j'ai bien trouvé une commande tar qui me
> conviendrait, mais seul souci, l'archive comporte un premier dossier "."
> tar --exclude='./download' -zcpvf test.tar.gz .
> 
> j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
> mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
> voulu...
> 
> du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
> dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
> premier dossier download.
> 
> merci pour l'aide,
> 
> Jerem
> 



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Jérémy Prego
Le 18/05/2019 à 10:05, Cyrille Bollu a écrit :
> ‘Comprend pas: c’est quoi le problème avec ta commande? Elle n’exclut pas le 
> 1er dossier download, c’est ça?

le souci avec ma commande, c'est qu'à la création de l'archive, ça crée
un premier dossier "." donc je dois ouvrir ce dossier pour voir mes
fichiers.
>
>> Le 18 mai 2019 à 09:18, Jérémy Prego  a écrit :
>>
>> Bonjour,
>>
>> Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
>> faire quelque chose qui me parait simple en théorie mais ça me semble
>> plus compliqué en pratique.
>>
>> en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
>> mais seulement dans la racine. je m'explique
>>
>> Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
>> dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
>> s'appelant archive, et qui contient aussi un dossier download.
>>
>> Je précise que quand je fais mon tar, je suis dans ce dossier "toto".
>>
>> à force de recherche, j'ai bien trouvé une commande tar qui me
>> conviendrait, mais seul souci, l'archive comporte un premier dossier "."
>> tar --exclude='./download' -zcpvf test.tar.gz .
>>
>> j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
>> mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
>> voulu...
>>
>> du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
>> dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
>> premier dossier download.
>>
>> merci pour l'aide,
>>
>> Jerem
>>



Re: HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Raphaël POITEVIN
Jérémy Prego  writes:
> tar --exclude='./download' -zcpvf test.tar.gz .
>
> j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
> mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
> voulu...
>
> du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
> dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
> premier dossier download.

Et si tu fais :
tar --exclude='./download' -zcpvf test.tar.gz $(ls)

Pas testé, juste une suggestion.
-- 
Raphaël



HS: tar exclure un dossier a la racine mais pas sous dossier

2019-05-18 Par sujet Jérémy Prego
Bonjour,

Je viens avec une petite question de NOOB sur tar ce matin. J'aimerai
faire quelque chose qui me parait simple en théorie mais ça me semble
plus compliqué en pratique.

en fait, j'aimerai archiver un dossier mais en excluant un sous dossier
mais seulement dans la racine. je m'explique

Pour l'exemple, le dossier s'appel toto. Dans toto il y a plein de sous
dossier dont un qui s'appel download. mais, il y a aussi un sous dossier
s'appelant archive, et qui contient aussi un dossier download.

Je précise que quand je fais mon tar, je suis dans ce dossier "toto".

à force de recherche, j'ai bien trouvé une commande tar qui me
conviendrait, mais seul souci, l'archive comporte un premier dossier "."
tar --exclude='./download' -zcpvf test.tar.gz .

j'ai bien essayé de remplacer le point de la fin par un * et d'adapter
mon exclude en conséquence, mais j'ai pas réussi a obtenir le résultat
voulu...

du coup, j'aimerai mixer les deux. À savoir, avoir directement mes
dossier a l'ouverture de l'archive, et ne pas avoir le contenu du
premier dossier download.

merci pour l'aide,

Jerem