Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
pipe [Le 09/05/2009, 18:37]
neeteex créée
pipe [Le 28/05/2020, 17:44] (Version actuelle)
185.220.103.4 beaver
Ligne 1: Ligne 1:
-====== ​Pipe ======+{{tag>​console shell BROUILLON}} 
 +---- 
 + 
 +====== ​Pipe : chaîner les commandes ​======
  
 Un "​pipe"​ ou "​tuyau"​ permet de passer le résultat d'une commande shell à une autre commande shell. Un "​pipe"​ ou "​tuyau"​ permet de passer le résultat d'une commande shell à une autre commande shell.
 +
 +**Concaténation** : **Alt Gr** + **6**((Le **6** dans la partie alphabétique du clavier. **ALT GR** sur le clavier Mac.)).
  
 ===== Pourquoi faire ? ===== ===== Pourquoi faire ? =====
  
 +==== Parce qu'on peut pas faire autrement ====
 +===C'​est le cas notamment lorsqu'​on veut trier les données envoyées par une commande :===
  
 +<code bash>du | sort -nr | less</​code>​
  
-==== Parce qu'on peut pas faire autrement ​==== +==== Pour aller plus vite : étude de cas avec tar, bzip2, split et mysqldump ​==== 
-C'est le cas notamment lorsqu'​on veut trier les données envoyées par une commande :+ 
 +=== Commandes utilisées === 
 + 
 +<code bash > mysqldump --host=localhost --user=root --password=MonMotDePasse MaBaseDeDonnee > fichier_intermediaire.sql</​code>​ 
 + 
 +<code bash> tar --create --file fichier_intermediaire.tar dossier_source/</​code>​ 
 + 
 +<code bash> bzip2 fichier_intermediaire</​code>​
  
-        du | sort -nr | less+<code bash> split --numeric-suffixes --bytes=3k fichier_intermediaire.tar.bz2 prefixe_du_fichier_destination.tar.bz2</​code>​
  
 +=== tar + bzip ===
  
-==== Pour aller plus vite ====+<code bash> tar  --create --file dossier_source/​ | bzip2 > fichier_destination.tar.bz2</​code>​
  
-Par exemple :+<note tip>Le tube n'est en fait pas indispensable ici, car la commande tar accepte l'​option de compression - -bzip2</​note>​ 
 +<code bash> tar --bzip2 ​ --create --file fichier_destination.tar.bz2 dossier_source/</​code>​
  
-       tar -cvf foo.tar foo/ +=== tar + bzip + split ===
-       bzip2 foo.tar +
-       split -b 40k foo.tar foo.tar.+
  
-sera remplacé par : +<code bash> ​tar --bzip2 --create dossier_source/ | split --bytes=3k ​--numeric-suffixes ​ prefixe_du_fichier_destination.tar.bz2</​code>​
-        ​tar --bzip2 -c foo/ | split -b 10k -foo.tar.bz2.+
  
 +=== mysql + bzip ===
  
 +<code bash> mysqldump --host=localhost --user=root --password=MonMotDePasse MaBaseDeDonnee |  bzip2 --stdout --quiet --best > fichier_destination.sql.bz2</​code>​
  
 +=== mysqldump + bzip + split ===
 +<code bash> mysqldump --host=localhost --user=root --password=MonMotDePasse MaBaseDeDonnee |  bzip2 --stdout --quiet --best | split --bytes=1m --numeric-suffixes ​ - fichier_destination.sql.bz2</​code>​
  
 ===== D'​autres explications ===== ===== D'​autres explications =====
-[[http://​www.siteduzero.com/​tutoriel-3-62417-les-flux-de-redirection.html#​ss_part_4|le chapitre du "Site du Zero"​]] 
  
 +[[http://​www.openclassrooms.com/​tutoriel-3-62417-les-flux-de-redirection.html#​ss_part_4|le chapitre du "Site du Zero"​]]
  
 +----
  
 +//​Contributeur(s)/​trice(s) : [[https://​doc.ubuntu-fr.org/​communaute#​communaute_ubuntu-fr|La Communauté Ubuntu-fr]],​ [[:​utilisateurs:​BeAvEr|BeAvEr]].//​
  • pipe.1241887030.txt.gz
  • Dernière modification: Le 18/04/2011, 14:58
  • (modification externe)