Echo: Unterschied zwischen den Versionen
KKeine Bearbeitungszusammenfassung |
K Textersetzung - „:Linux:Bash“ durch „:Linux:Shell:Bash“ |
||
Zeile 151: | Zeile 151: | ||
# https://wiki.ubuntuusers.de/echo/ | # https://wiki.ubuntuusers.de/echo/ | ||
[[Category:Linux:Bash]] | [[Category:Linux:Shell:Bash]] |
Version vom 3. Februar 2022, 13:41 Uhr
Bezeichnung
echo Zeigen Sie eine Textzeile / Zeichenfolge in der Standardausgabe oder einer Datei an.
Übersicht
$ echo [OPTION][STRING]
intern echo Die Befehle, die direkt von der Shell ausgeführt werden, werden als interne Befehle bezeichnet. Es gibt keinen separaten Prozess zum Ausführen dieser Befehle.
/usr/bin/echo
extern echo Die Befehle, die vom Kernel ausgeführt werden, werden als externe Befehle bezeichnet. Jeder Befehl hat seine eindeutige Prozess-ID
/usr/bin/echo
warum sollte ich es benutzen wollen:
1 Sie verwenden nicht immer eine Shell. Unter verschiedenen Umständen führen Sie eine ausführbare Datei direkt und nicht über eine Shell aus.
2 Zumindest theoretisch haben einige Muscheln kein eingebautes Echo. Dies ist eigentlich nicht erforderlich.
Ein weniger häufiger Grund, warum Sie / bin / echo absichtlich verwenden könnten, ist, wenn Sie sich auf die Unterschiede zwischen ihm und dem von Ihrer Shell bereitgestellten Echo-Befehl verlassen.
Echo ist nicht sehr portabel, da unterschiedliche Implementierungen - sowohl über Betriebssysteme als auch über Shells auf demselben Betriebssystem hinweg - unterschiedliche Optionen (z. B. -e) unterstützen und sich in ihrer Behandlung von Backslashes unterscheiden.
Optionen
Options | Description |
---|---|
-n | Drucken Sie die nachfolgende neue Zeile nicht |
-e | Aktivieren Sie die Interpretation von Backslash-Escapezeichen |
Escapesequenzen | Description |
---|---|
\b | Rücktaste "Backspace" |
\\ | Backslashs |
\n | Neue Zeile |
\r | Wagenrücklauf "carriage return" |
\t | Horizontaler Tab |
\v | Vertikaler Tab |
Anwendungen
Geben Sie eine Textzeile ein und zeigen Sie sie in der Standardausgabe an
$ echo Hallo Welt
Gibt den folgenden Text aus:
Hallo Welt
Deklarieren Sie eine Variable und geben Sie ihren Wert wieder. Deklarieren Sie beispielsweise eine Variable von x und weisen Sie ihren Wert = 10 zu
$ x=10
echo seinen Wert:
$ echo The value of variable x = $x
The value of variable x = 10
Verwenden Sie die Option '\b' - Rücktaste mit Backslash-Interpreter '-e', die alle dazwischen liegenden Leerzeichen entfernt
$ echo -e "Sehr \bgeehrte \bDamen \bund \bHerren"
SehrgeehrteDamenundHerren
Mit der Option '\n' - Neue Zeile mit Rücktaste-Interpretor '-e' wird eine neue Zeile dort behandelt, wo sie verwendet wird
$ echo -e "Sehr \ngeehrte \nDamen \nund \nHerren"
Sehr geehrte Damen und Herren
Verwenden Sie die Option '\t' - horizontale Registerkarte mit Rücktaste-Interpretor '-e', um horizontale Registerkarten zu erhalten
$ echo -e "Sehr \tgeehrte \tDamen \tund \tHerren"
Sehr geehrte Damen und Herren
Wie wäre es, wenn Sie die Option Neue Zeile '\n' und die horizontale Registerkarte '\t' gleichzeitig verwenden
$ echo -e "\n\tSehr \n\tgeehrte \n\tDamen \n\tund \n\tHerren"
Sehr geehrte Damen und Herren
Verwenden Sie die Option '\v' - vertikale Registerkarte mit Rücktaste-Interpretor '-e', um vertikale Tabulatoren zu erhalten
$ echo -e "\vSehr \vgeehrte \vDamen \vund \vHerren" Sehr geehrte Damen und Herren
Wie wäre es, wenn Sie die Option Neue Zeile '\n' und vertikale Registerkarte '\v' gleichzeitig verwenden
$ echo -e "\n\vSehr \n\vgeehrte \n\vDamen \n\vund \n\vHerren"
Sehr
geehrte
Damen
und
Herren
Drucken Sie alle Dateien / Ordner mit dem Befehl echo (ls command alternative)
$ echo *
103.odt 103.pdf 104.odt 104.pdf 105.odt 105.pdf 106.odt 106.pdf 107.odt 107.pdf 108a.odt 108.odt 108.pdf 109.odt 109.pdf 110b.odt 110.odt 110.pdf 111.odt 111.pdf 112.odt 112.pdf 113.odt linux-headers- 3.16.0-customkernel_1_amd64.deb linux-image-3.16.0-customkernel_1_amd64.deb network.jpeg
Drucken Sie Dateien einer bestimmten Art
$ echo *.jpeg
network.jpeg
Links
Siehe auch