Bonjour, je voudrais savoir comment compresser des fichiers (peu importe le format) dans des fichiers qui portent respectivement le nom du fichier source et qui ne contient rien d'autre qu'un fichier source (1 fichier par archive).
Les programmes de compressions bzip et gzip ne gèrent qu'un fichier par archive de toute façons, pour compresser plusieurs fichiers il faut les combiner avec tar (ou cpio) qui ne sont pas des programmes de compression mais d'archivage.
Tu peux utiliser "xargs":
ls *.bmp | xargs -I xxx ma_commande xxx xxx.zip
"ls *.bmp" va envoyer la liste de tous les fichiers se terminant par .bmp vers la sortie standard (grace à la redirection "|" ).
xargs va récupérer ce qui vient de l'entrée standard et exécuter ma_commande pour chaque argument. En remplaçant xxx par les arguments en question.
Exemple:
Tu as 3 fichiers bmp (mémé_fait_du_roller.bmp mémé_à_l_hôpital.bmp chez_le_notaire.bmp)
Tu vas avoir ma_commande appelé 3 fois:
ma_commande mémé_fait_du_roller.bmp mémé_fait_du_roller.bmp.zip
ma_commande mémé_à_l_hôpital.bmp mémé_à_l_hôpital.bmp.zip
ma_commande chez_le_notaire.bmp chez_le_notaire.bmp.zip
Je me suis inspiré de wikipédia pour parler de guillemets droits, sinon j'aurais simplement dit guillemets mais ca me semblait justement plus ambigu :
* guillemets typographiques (ou français), en forme de chevrons imbriqués : « (ouvrant) et » (fermant) ;
* guillemets anglais : “ (ouvrant) et ” (fermant) ;
* guillemets allemands : „ (ouvrant) et “ (fermant)
* guillemets droits " (sans symétrie) :
Ceci dit, effectivement plus bas ils parlent des noms unicode:
* guillemet anglais (nom Unicode, appelé « guillemet droit » dans l'article) "
* guillemet droit »
Bon, en gros faut appuyer sur le 3 du clavier principal (donc pas le pavé numérique) sans shift quand on est dans le mode standard azerty.
# Re:
Posté par Tonton Benoit . Évalué à 7.
Les programmes de compressions bzip et gzip ne gèrent qu'un fichier par archive de toute façons, pour compresser plusieurs fichiers il faut les combiner avec tar (ou cpio) qui ne sont pas des programmes de compression mais d'archivage.
# Solution générique: xargs
Posté par Kerro . Évalué à 4.
ls *.bmp | xargs -I xxx ma_commande xxx xxx.zip
"ls *.bmp" va envoyer la liste de tous les fichiers se terminant par .bmp vers la sortie standard (grace à la redirection "|" ).
xargs va récupérer ce qui vient de l'entrée standard et exécuter ma_commande pour chaque argument. En remplaçant xxx par les arguments en question.
Exemple:
Tu as 3 fichiers bmp (mémé_fait_du_roller.bmp mémé_à_l_hôpital.bmp chez_le_notaire.bmp)
Tu vas avoir ma_commande appelé 3 fois:
ma_commande mémé_fait_du_roller.bmp mémé_fait_du_roller.bmp.zip
ma_commande mémé_à_l_hôpital.bmp mémé_à_l_hôpital.bmp.zip
ma_commande chez_le_notaire.bmp chez_le_notaire.bmp.zip
[^] # Re: Solution générique: xargs
Posté par totof2000 . Évalué à 5.
do
macommande $i
done
Ca fait la même chose.
[^] # Plus clair pour les débutants
Posté par Kerro . Évalué à 2.
Pour me faire plaisir:
for i in *.bmp; do macommande $i; done
:-)
[^] # Re: Plus clair pour les débutants
Posté par ✅ ffx . Évalué à 0.
[^] # Re: Plus clair pour les débutants
Posté par Kerro . Évalué à 2.
for i in *.bmp; do macommande "$i"; done
[^] # Re: Plus clair pour les débutants
Posté par ✅ ffx . Évalué à 1.
Je me suis inspiré de wikipédia pour parler de guillemets droits, sinon j'aurais simplement dit guillemets mais ca me semblait justement plus ambigu :
* guillemets typographiques (ou français), en forme de chevrons imbriqués : « (ouvrant) et » (fermant) ;
* guillemets anglais : “ (ouvrant) et ” (fermant) ;
* guillemets allemands : „ (ouvrant) et “ (fermant)
* guillemets droits " (sans symétrie) :
Ceci dit, effectivement plus bas ils parlent des noms unicode:
* guillemet anglais (nom Unicode, appelé « guillemet droit » dans l'article) "
* guillemet droit »
Bon, en gros faut appuyer sur le 3 du clavier principal (donc pas le pavé numérique) sans shift quand on est dans le mode standard azerty.
[^] # Compréhensivitibilité mélanjouillée
Posté par Kerro . Évalué à 3.
En général on dit:
guillemet simple = '
guillemet double = "
Et le mieux c'est d'écrire les guillemets en question, comme ça on est sûr que les crétxxx comme moi comprennent :-)
# Merci
Posté par Guilllo . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.