Chaînes et flux

Jusqu’ici, les communications en entrée et en sortie des commandes (en particulier du shell) ont été qualifiées de chaînes de caractères. Pour être parfaitement exact, il faut plutôt parler de flux de données : une commande prend un flux de données en entrée et émet un flux de données en sortie. Bien souvent, ce flux de données est constitué de caractères lisibles (il peut alors être affiché sous la forme d’une chaîne de caractères), mais cela n’est pas obligatoire. Une commande de compression de fichier, par exemple, émettra un flux de données binaire, correspondant au fichier compressé.

En plus des arguments qu’elles acceptent lorsqu’elles sont exécutées, les commandes peuvent donc accepter un flux de données, afin de retourner un autre flux de données. La possibilité de connecter le flux de sortie d’une commande sur le flux d’entrée d’une autre est alors simple à imaginer ; c’est cette caractéristique qui permet de mettre en œuvre le principe KISS évoqué en introduction : on chaîne les commandes les unes derrière les autres.

1. Fichiers et pseudo-fichiers

Un fichier, stocké sur un disque, peut quant à lui être rapproché d’un flux de données qui serait « gelé » afin d’être...

Pour consulter la suite, découvrez le livre suivant :
couv_RISHE.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Définition du shell
Suivant
Shell, shell script et langage