Skip to main content

Linux QuickTip: Téléchargement et décompression en une étape

Linux QuickTip: Téléchargement et décompression en une étape

Geoffrey Carr

La plupart du temps, lorsque je télécharge quelque chose, il s’agit d’une archive de fichiers - généralement un fichier compressé ou un fichier zip. Il peut s’agir du code source d’une application qui n’est pas incluse dans l’arborescence de Portage de Gentoo, de la documentation pour une application d’entreprise interne ou même d’une tâche aussi banale qu’une nouvelle installation WordPress.

La manière traditionnelle de télécharger et de décompresser quelque chose dans le terminal serait la suivante:

wget http://wordpress.org/latest.tar.gz

tar xvzf latest.tar.gz

rm latest.tar.gz

Ou peut-être la forme plus compacte:

wget http://wordpress.org/latest.tar.gz && tar xvzf latest.tar.gz && rm latest.tar.gz

De toute façon, c'est un peu maladroit. C’est une opération très simple, un shell puissant comme bash devrait permettre à une telle tâche d’être exécutée de manière plus «fluide».

Eh bien, grâce à une petite commande utile "curl", nous pouvons accomplir le désordre ci-dessus en une seule déclaration:

curl http://wordpress.org/latest.tar.gz | tar xvz

Pas de fichiers temporaires à supprimer, pas de déconner avec des esperluettes. En bref, une commande très compacte et efficace. En fait, d’un point de vue théorique, la méthode curl peut être plus rapide que le désordre wget / tar / rm concaténé puisque stdout piping utilisera la mémoire RAM si possible, alors que wget et tar (avec le commutateur -f) doivent être lus / écrits. directement à partir d'un disque.

Par ailleurs, tar avec l’option -v (comme nous l’avons utilisé dans tous les exemples ci-dessus) imprime chaque nom de fichier sur la sortie standard, car ils ne sont pas tous deux classés. Cela peut entraver la sortie de curl, qui indique le statut du téléchargement. Nous pouvons faire taire tar en l'invoquant sans -v ainsi:

curl http://wordpress.org/latest.tar.gz | tar xz

Et c’est tout ce qu’il ya à faire!

Link
Plus
Send
Send
Pin