Skip to content

Linux Attitude

Le libre est un état d'esprit

Archive

Tag: Historique

Niveau :      
Résumé : ed

Un autre petit voyage dans le passé nous amène à regarder l'un des tout premiers éditeurs de texte. Écrit à une époque ou les terminaux étaient constitué d'un clavier et d'un imprimante, ed est le seul, l'unique éditeur standard.

Dans la droite ligne des produits unix, ed a un nom de 2 lettres, fait une chose et le fait bien. Il est minimaliste, mais plein de fonctionnalités. Les habitués de vi et de sed ne seront pas dépaysés puisque ceux-ci sont les enfants légitimes de ed.

Une fois lancé, ed prend les commandes une par une, sur une ligne, et imprime une réponse qu'il y a lieu. C'est tout ! Reste à connaître les commandes. Ed comprend les commentaires et dispose de commandes d'une lettre a pour append, i pour insert, p pour print ... Bien qu'il ne se voit pas, ed dispose d'un curseur interne lui indiquant où il se trouve dans un fichier, celui-ci étant positionné à la fin du fichier au début de la session.

$ ed test.txt
# on ajoute une ligne à la fin du fichier (à la vi)
# l'entrée texte se termine par un point seul sur une ligne (ou ctrl-d)
a
Ligne de test
Ligne tout court
.
#on imprime tout (% à la vi, p à la sed)
%p
# on change la première ligne
1c
Ligne de retest
.
# modification à la sed
1s/Ligne/Droite/
# on sauvegarde
w
# on quitte
q

Une session d'édition est finalement très simple, surtout quand on connaît vi. Mais Pourquoi parler des ancêtres s'ils ne servent plus ? Tout simplement parce qu'il est installé partout, sur toutes vos machines. Et il se peut que certains scripts soient écrits en ed, même s'il ne fait rien qu'un bon sed -i ne puisse faire.

Niveau :      
Résumé : write ; mesg ; wall ; talk

Une petite explication sur une commande du passé. A l'époque où la messagerie instantanée n'était pas encore née, où l'irc n'était qu'une vague idée, beaucoup de gens utilisaient déjà des unix. Généralement sur de gros système d'université où on trouvaient de très nombreux comptes et donc beaucoup de personnes connectées simultanément.

Write

On a alors trouvé une grande utilité à un petit utilitaire nommé write. Le concept est très simple, il permet d'écrire un message à une autre personne personne connectée à la même machine.

$ write peck
Coucou peck !
<ctrl -d>

Le système de communication est très basique, le message est directement écrit sur le terminal de la personne connectée. Comme cela peut devenir très gênant de se retrouver avec un message en plein millieu de son écran, il est possible d'interdire à un autre utilisateur de vous écrire :

# y pour réactiver
$ mesg n

Bien sur la personne peut être connectée sur plusieurs terminaux. Il est alors possible de choisir un terminal en particulier, la commande who peut vous aider à savoir qui est connecté à quel terminal :

$ who
$ write peck pts/3

continue reading...