Tube (shell)

Tube (shell)
Page d'aide sur l'homonymie Pour les articles homonymes, voir Tube.

Les shell des systèmes d'exploitation de type Unix disposent d'un mécanisme appelé tube, ou pipeline, ou pipe (/paɪp/). Ce mécanisme permet de chaîner des processus de sorte que la sortie d'un processus (stdout) alimente directement l'entrée (stdin) du suivant. Chaque connexion est implantée par un tube anonyme. Les programmes filtres sont souvent utilisés dans cette configuration. Douglas McIlroy a inventé ce concept pour les shells Unix et le nom anglais découle de l'analogie avec un pipeline physique.

Sommaire

Shell Unix

Le symbole utilisé pour créer des tubes dans les shells Unix est la barre verticale |, appelée communément pipe par extension.

Par exemple : programme1 | programme2

Le programme programme1 est exécuté par le système qui envoie les résultats au programme2 qui à son tour renvoie les résultats sur la sortie standard du système.

Le pipe est très utilisé sur Unix, par exemple pour associer plusieurs commandes dont on enchaîne les traitements.

Par exemple, la commande :

cut -d" " -f1 < access.log | sort | uniq -c | sort -rn | less

Permet d'extraire d'afficher les adresses IP des clients ayant accédé le plus fréquemment à un serveur web Apache.

Les pseudo-tubes

Dans les systèmes d'exploitation monotâches comme le MS-DOS, les processus chainés doivent être exécutés séquentiellement, c'est-à-dire l'un après l'autre. La sortie de chaque processus est alors enregistrée dans un fichier temporaire, qui est ensuite lu par le processus suivant. Dès lors d'une part la taille requise sur disque pour effectuer ces commandes peut être très importante et donc très lente, d'autre part l'acquisition permanente est impossible puisqu'elle ne rendra jamais « la main » et enfin ces commandes ne peuvent pas permettre de traiter des acquisitions de données en temps réel puisque tout doit être écrit sur les disques avant que le second traitement soit effectué. La syntaxe en revanche est identique à celles des tubes des shell UNIX. Dès lors on parle de pseudo-tubes.

Le traitement de la commande « dir | sort | more » par l'interpréteur de commandes permet d'afficher par page le liste des fichiers du répertoire de manière triée. Pour ce faire, le système exécute :

  1. création d'un fichier temporaire 1.tmp dans le répertoire pointé par la variable %TEMP% ou dans le répertoire courant si %TEMP% n'est pas renseigné
  2. exécution de la commande « dir » et enregistrement des données dans le fichier 1.temp
  3. création d'un fichier temporaire 2.tmp
  4. exécution de la commande « sort » avec en entrée le fichier 1.tmp et sortie dans le fichier 2.tmp
  5. exécution de la commande « more » avec pour entrée le fichier 2.tmp et sortie sur la sortie standard
  6. effacement de 1.tmp et 2.tmp

Windows PowerShell

Windows PowerShell, l'équivalent des shell pour les systèmes d'exploitation multitâches de Microsoft, met aussi en œuvre ce genre de mécanisme. Mais contrairement aux tubes UNIX qui permettent de manipuler un flux de donnée brut sous forme d'octet ou de bits, les tubes de PowerShell permettent de manipuler des objets .NET, méthode qui, implicitement par l'interpréteur de commande, vérifie la nature du flux.


Notes et références

Articles connexes

  • Il est possible sous Unix d'utiliser les mécanismes des internes du système pour effectuer ce type de manipulation, voir tube
  • flux standard

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Tube (shell) de Wikipédia en français (auteurs)

Игры ⚽ Поможем написать реферат

Regardez d'autres dictionnaires:

  • Tube-shell — n. (Zo[ o]l.) Any bivalve mollusk which secretes a shelly tube around its siphon, as the watering shell. [1913 Webster] …   The Collaborative International Dictionary of English

  • tube shell — noun : blind shell 2 …   Useful english dictionary

  • shell — less, adj. shell like, adj. /shel/, n. 1. a hard outer covering of an animal, as the hard case of a mollusk, or either half of the case of a bivalve mollusk. 2. any of various objects resembling such a covering, as in shape or in being more or… …   Universalium

  • Shell Centre — Shell Centre, in London, United Kingdom is one of the two central offices of oil major Shell (the other is in The Hague). It comprises a skyscraper tower and three nine storey wings (the upstream building ). It also once included a separate… …   Wikipedia

  • Tube nomme — Tube nommé En informatique, le terme tube nommé (calqué sur l anglais named pipe) désigne un concept prolongeant celui des tubes Unix classiques que l on peut trouver sur les systèmes d exploitation de type Unix ou Windows. Il s agit de l une des …   Wikipédia en Français

  • Shell and tube heat exchanger — A shell and tube heat exchanger is a class of heat exchanger designs. [ cite book|author=Sadik Kakaç and Hongtan Liu|title=Heat Exchangers: Selection, Rating and Thermal Design|edition=2nd Edition|publisher=CRC Press|year=2002|id=ISBN 0849309026] …   Wikipedia

  • Tube (informatique) — Pour les articles homonymes, voir Tube. En génie logiciel, un tube ou une pipeline est un mécanisme de communication inter processus sous la forme d une série de données, octets ou bits, accessibles en FIFO. Le patron de conception qui correspond …   Wikipédia en Français

  • Shell (projectile) — This article is about the artillery projectile. For the small arms ammunition, see Shotgun shell. Some sectioned shells from the First World War. From left to right: 90 mm fragmentation shell, 120 mm pig iron incendiary shell, 77/14 model 75 mm… …   Wikipedia

  • Tube socket — Left to right: octal (top and bottom view), loctal, and miniature (top and side view) sockets. An early transistor socket and an IC socket are included for comparison. Tube sockets are electrical sockets into which vacuum tubes (also known as… …   Wikipedia

  • shell — Synonyms and related words: Eustachian tube, L, R, acting area, aim at, alveolation, alveolus, ante up, antrum, anvil, apron, apron stage, armadillo shell, armature, armor, armor plate, armpit, atom, atomic model, attack, auditory apparatus,… …   Moby Thesaurus

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”