Echo (Befehl)

Echo
Sleepunix.png
Das echo Befehl auf Unix
Originalautor (en) Douglas McIlroy
(AT & T Bell Laboratories)
Entwickler (en) Verschiedene Open Source und kommerziell Entwickler
Betriebssystem Mehrheit, Unix, Unix-artig, V, Plan 9, Inferno, BIEGEN, Tripos, Amigados, Z80-RIO, OS-9, DOS, MSX-dos, Panos, Flexos, Sisne Plus, OS/2, Fenster, Reactos, MPE/ix, Kolibrios, Symbos
Plattform Plattformübergreifend
Typ Befehl

Im Computer, Echo ist ein Befehl Das gibt die Zeichenfolgen aus, die an sie übergeben werden als Argumente. Es ist ein Befehl in verschiedenen verfügbaren Betriebssystem Muscheln und normalerweise verwendet in Shell -Skripte und Stapeldateien Um den Statustext auf den Bildschirm auszuführen[1] oder ein Computerdatei, oder als Quelle Teil von a Pipeline.

Implementierungen

Der Befehl ist in den folgenden Betriebssystemen verfügbar:

Viele Muscheln, einschließlich aller Bourne-ähnlich (wie z. Verprügeln[14] oder ZSH[15]) und CSH-ähnliche Muscheln sowie Command.com und cmd.exe implementieren Echo Als ein Gebäudebefehl.

Der Befehl ist auch in der erhältlich EFI -Hülle.[16]

Geschichte

Echo begann innen Mehrheit. Nachdem es programmiert war C durch Doug McIlroy Als "Fingerübung" und erwies sich als nützlich, wurde es Teil von Version 2 Unix. Echo -n in Version 7 ersetzt prompt, (was sich verhalten hat wie Echo aber ohne seine Ausgabe mit einem Liniengrenzwert zu beenden).[17]

An PWB/UNIX und später UNIX -System III, Echo begann zu expandieren C Escape -Sequenzen wie zum Beispiel \n mit dem bemerkenswerten Unterschied, dass Oktal -Fluchtsequenzen als ausgedrückt wurden als \ 0ooo Anstatt von \ ooo in C.[18]

Achte Ausgabe Unix Echo Nur die Fluchtweiterung, wenn er verabschiedet wurde -e Möglichkeit,[19] und dieses Verhalten wurde von einigen anderen Implementierungen wie dem Bauten kopiert Echo Befehl von Verprügeln oder ZSH und Gnu Echo.

An MS-DOSDer Befehl ist in den Versionen 2 und später erhältlich.[20]

Heutzutage mehrere inkompatible Implementierungen von Echo existieren auf verschiedenen Betriebssystemen (oft mehrere auf demselben System), von denen einige standardmäßig die Fluchtsequenzen erweitern, einige davon nicht, einige akzeptieren Optionen (deren Liste mit Implementierungen variiert), einige davon nicht.

Das Posix Spezifikation von Echo[21] verlässt das Verhalten nicht spezifiziert, wenn das erste Argument ist -n oder ein Argument enthält Backslash -Zeichen, während die UNIX -Spezifikation (XSI -Option in POSIX) die Erweiterung von (einigen) Sequenzen vorschreibt und keine Optionsverarbeitung zulässt. In der Praxis viele Echo Implementierungen sind in der Standardumgebung nicht konform.

Wegen dieser Variationen des Verhaltens, Echo wird als nicht portabler Befehl auf Unix-ähnlichen Systemen angesehen[22] und die printf Befehl (Wo von der neunten Ausgabe Unix vorgestellt wird) wird stattdessen bevorzugt.

Verwendungsbeispiele

C: \>Echo Hallo WeltHallo Welt 

Verwendung Ansi Escape Code SGR Sequenzen, kompatible Terminals können farbigen Text ausdrucken.

Verwendung einer UNIX -System III-Stil -Implementierung:

BGRED=`Echo "\ 033 [41m"` Fgblue=`Echo "\ 033 [35m"` Bggreen=`Echo "\ 033 [42m"` NORMAL=`Echo "\ 033 [M"` 

Oder eine Implementierung im Unix-Version 8-Stil (z. B. Bash, wenn nicht im Unix-Konformitätsmodus):

BGRED=`Echo -e "\ 033 [41m"` Fgblue=`Echo -e "\ 033 [35m"` Bggreen=`Echo -e "\ 033 [42m"` NORMAL=`Echo -e "\ 033 [M"` 

und danach:

Echo "$ {Fgblue} Text in Blau $ {NORMAL}" Echo "Text normal" Echo "$ {BGRED} Hintergrund in rot " Echo "$ {Bggreen} Hintergrund in grün und zurück bis zum normalen $ {NORMAL}" 

Portabel mit printf:

BGRED=`printf '\ 33 [41m'` NORMAL=`printf '\ 33 [M'` printf '%s \ n' "$ {BGRED}Text auf rotem Hintergrund$ {NORMAL}" 

Siehe auch

Verweise

  1. ^ Rügheimer, Hannes; Spanik, Christian (12. September 1988). Amigados Schnellreferenz. Grand Rapids, MI: Abacus. ISBN 9781557550491 - über das Internetarchiv.
  2. ^ "Multics -Befehle". www.multicians.org.
  3. ^ "Flex 9.0 Benutzerhandbuch" (PDF).
  4. ^ "Handbuch" (PDF). www.pagetable.com. Abgerufen 2020-09-12.
  5. ^ Z80-RIO-Betriebssystem-Benutzerhandbuch
  6. ^ Paul S. Dayan (1992). Der OS -9 -Guru - 1: Die Fakten. Galaktische Industrial Limited. ISBN 0-9519228-0-7.
  7. ^ "Chris 'Eicheln: Panos". chrisacorns.computinghistory.org.uk.
  8. ^ [1][Dead Link]
  9. ^ [2][Dead Link]
  10. ^ "Echo". docs.microsoft.com.
  11. ^ "Reactos/Reactos". GitHub. 3. Januar 2022.
  12. ^ MPE/IX -Befehlsreferenzhandbuch
  13. ^ "Shell - Kolibrios Wiki". wiki.kolibrios.org.
  14. ^ "BASH BAUSE (Bash Referenzhandbuch)". www.gnu.org.
  15. ^ "ZSH: 17 Shell Builtin Commands". zsh.sourceforge.net.
  16. ^ "EFI -Muscheln und Skripten". Intel. Abgerufen 2013-09-25.
  17. ^ McIlroy, M. D. (1987). A Research Unix Reader: Annotierte Auszüge aus dem Programmierhandbuch, 1971–1986 (PDF) (Technischer Bericht). Cstr. Bell Labs. 139.
  18. ^ Mascheck, Sven. "Echo- und Printf -Verhalten". Abgerufen 24. Juli 2016.
  19. ^ "8. Ausgabe Unix Echo Man Page". Abgerufen 24. Juli 2016.
  20. ^ Wolverton, Van (2003). RUNSE MS-DOS Version 6.22 (20-jährige Jubiläumsausgabe), 6. Überarbeitete Ausgabe. Microsoft Press. ISBN 0-7356-1812-7.
  21. ^ Echo: Schreiben Sie Argumente in die Standardausgabe - Shell and Utilities Referenz, Die einzelne Unix -Spezifikation, Version 4 von Die offene Gruppe
  22. ^ "Autoconf -Dokumentation zur Echo -Portabilität". Kostenlose Software -Stiftung. Abgerufen 24. Juli 2016.

Weitere Lektüre

  • Wolverton, Van (1990). MS-DOS-Befehle: Microsoft Quick Reference, 4. Überarbeitete Ausgabe. Microsoft Press. ISBN 978-1556152894.
  • Kathy Ivens; Brian Profit (1993). OS/2 innen und außen. Osborne McGraw-Hill. ISBN 978-0078818714.
  • Frisch, Æleen (2001). Windows 2000 -Befehle Taschenreferenz. O'Reilly. ISBN 978-0-596-00148-3.

Externe Links