Question Quelle est l'origine de l'invite UNIX $ (dollar)?


L'invite UNIX utilise un $ symbole pour indiquer que votre entrée est attendue.

Je me demandais pourquoi ce symbole avait été choisi - s'il y avait une raison. Le dollar semble juste un peu inattendu. UNE > Le symbole aurait été plus suggestif à mon avis.


71


origine


Bien que n'étant pas lié à la programmation, certainement lié à l'informatique, donc mieux chez Super User, je pense. - Joey
Je veux aussi connaître la réponse. Je vais le chercher sur SU. - Gabriel Hurley
C'est l'invite du shell Bourne, pas l'invite Unix. L'invite csh par défaut est%. - wfaulk
wfaulk, j'aimerais pouvoir commenter votre commentaire plus d'une fois. - Richie Marquez
€ n'existait pas encore ... - mouviciel


Réponses:


Explorons un peu:

  • Version 8 Unix est facile. Il y a encore des pages de manuel disponibles. Aller au sh man page et recherche rapide. Vous arriverez à un point où Tu lis:

    PS1 Chaîne d'invite principale, par défaut "$".

    PS2 Chaîne d'invite secondaire, par défaut ">".

  • Alors voyons si c'était le premier. Version 7 Unix les pages de manuel sont toujours disponible, et la sh page de man donne la même description des invites que Version 8.

  • Qu'en est-il de la version 6? Version 6 Unix n'était pas difficile à suivre. Mais ses sh page de man ne mentionne pas les invites à tout. Le guide "Mise en route" est utile ici; il mentionne:

    L'aboutissement de vos efforts de connexion   est un signe de pourcentage "%". Le pourcentage   signe signifie que UNIX est prêt à   accepter les commandes du terminal.

Aha! Donc, la version 6 ne l'avait pas. La version 7 était la première! Sorti en 1979.

Content? Hate à pleuvoir sur votre défilé, mais ne soyez pas :)

Le problème est que la version 6 était un Unix inspirant. Regardez les variantes ici. Se peut-il que le signe $ en tant qu’invite de commande n’ait pas été démarré dans la version 7, mais dans l’une de ces variantes, puis l’idée a été incorporée dans 7?

À ce stade, je me suis fatigué de chercher de la documentation sur les systèmes d’exploitation à une époque où j’avais 6 ans. Cela au moins la réduit considérablement. Nous savons que la version 7 était la première version des laboratoires Bell à afficher le signe $ en tant qu’invite de commande. Tout ce dont nous avons besoin d’être sûr, c’est qu’aucune de ces variantes de la version 6 ne l’a présentée. Il est logique que ce changement soit apparu dans la version 7, puisque c'est la version qui a introduit le shell Bourne, remplaçant le shell Thompson utilisé dans les versions précédentes d'Unix (et le Coquille Massey utilisé dans Programmer's Workbench Unix).

Une dernière pensée cependant:
Bien que l'idée que $ soit un indice du shell de mots ou du script soit attrayante et logique, ne vous attendez pas à ce que cela soit officiellement confirmé. Le développement d'Unix a été partagé par un groupe assez important de personnes ayant de plus grandes préoccupations dans la vie que de suivre l'évolution d'un symbole. Et certains de ces programmeurs extraordinaires ne sont même plus parmi nous.

Très probablement, le mieux que vous puissiez espérer obtenir de la question "Quelle est l'origine de l'invite UNIX $ (dollar)?" est le nom du premier shell Unix qui l’a introduit.


51



La version 7 était le premier Unix avec le shell Bourne. Il a remplacé le shell Thompson dans la version 6. Il s’agit donc là d’une délimitation entre les invites du shell. - wfaulk
De plus, le shell Bourne a été développé par Stephen Bourne. - wfaulk
Ouaip. Nous pouvons presque le retrouver dans le Bourne Shell. Quant à l'auteur, pas de doute. Mais il était employé chez Bell Labs comme tout le monde. - A Dwarf
En outre, il y avait des pages de manuel au moins aussi loin que la version 3: minnie.tuhs.org/UnixTree/V3/usr/man/man1 - wfaulk
Dans les jours de la sixième édition et avant, UNIX était distribué avec le code source complet inclus. Toutes les universités qui l'ont obtenu ont eu tendance à faire des modifications locales (d'où provenait BSD), alors peut-être que certains programmeurs locaux de l'Université de Waterloo pensaient qu'une invite "shell" devrait ressembler plus à un escargot et changer le% en @ . Et comme vous le dites, il y avait beaucoup de variantes, et quand elles ont été rassemblées dans la version 7, l'origine des changements était sans doute déjà floue. - Michael Dillon


Malheureusement, je ne peux pas répondre à la question, mais je peux vous donner quelques indications.


7





L'invite d'origine du shell Bourne était un shell "@". Je m'en souviens sur la 6ème édition d'UNIX qui, je crois, est antérieure à la commercialisation d'UNIX. Le passage à un signe $ pourrait donc être lié à la commercialisation d'UNIX, comme l'a suggéré Robert, $ hell.


6



Le shell Bourne n'existait pas avant la version 7. - wfaulk
Eh bien, nous venons de l'appeler "le shell" donc je ne sais pas vraiment qui l'a écrit. Je me souviens avoir vu des affiches avec toutes les commandes de coquillages documentées sur elles, disposées en spirale comme une coquille d'escargot ou au signe. Peut-être que c'était de O'Reilly mais je ne peux pas en être sûr. - Michael Dillon


En fait, l'invite de ligne de commande standard sous Linux pour un compte d'utilisateur normal utilisant un shell Bourne, Bash ou Korn est le signe dollar ($) alors que l'invite racine est un signe dièse (#). En revanche, l'invite traditionnelle du shell C est un signe de pourcentage (%).

Si je devais deviner, le $ rappelle le mot $ hell, ce qui explique probablement pourquoi il a été choisi.


5



Il demande l'origine réelle, pas pour ce que les gens pensent. - davr
Ne sois pas sarcastique. À en juger par les autres réponses affichées ici, il semble que personne ne le sait vraiment. - Robert Harvey
Je suppose que l'invite racine # est choisie pour coïncider avec le caractère du commentaire, réduisant ainsi les risques de collage accidentel de commandes dangereuses ... ou peut-être pas! Je ne pense pas qu'ils aient eu beaucoup de recoupement dans la journée. - Sam Watkins


Attention: cela peut ne pas être vrai, c'est juste une conjecture sauvage:

J'ai le sentiment que $ est un rappel psychologique.

Nous devons nous rappeler que, à l’époque, il n’y avait pas d’invite numérique, seulement un "télétype" en papier (tty). Et probablement le dollar était de dire "vous gaspillez du papier et de l’argent en gardant cette ligne de téléphone en place. Il suffit de saisir quelques commandes déjà !!".


1