Konubinix' opinionated web of thoughts

Réfléchir Une CLI, C'est Aussi Réfléchir Une AEI

Fleeting

ambiguïté entre AEI et CLI

Quand on crée un outil en ligne de commande, on pense qu’on écrit un cli, c’est à dire une interface dont une des deux entités est l’humain.

On fournit des fonctionnalités qui vont dans ce sens, comme la complétion, la couleur, les options courte ls -a. La sortie de ls a des couleurs et est alignée sur un tableau.

En revanche, ces programmes changent de comportement quand ils sont connecté à un autre programme (et pas à un TTY). Par exemple, ls | cat ne montre plus de couleurs et affiche un résultat par ligne. Cela afin de faciliter le traitement de l’information. Autrement, la sortie contiendrait plein de ^[[01;34m qu’il faudrait ignorer.

En ce sens, ls fournit aussi une application execution interface.