Echo: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 44: | Zeile 44: | ||
echo -e 'Heute ist ein schöner Sommer \btag!' | echo -e 'Heute ist ein schöner Sommer \btag!' | ||
Heute ist ein schöner Sommertag! | Heute ist ein schöner Sommertag! | ||
*Wenn Sie selbst eine Variable deklarieren müssen, können Sie das einfach durch Eingabe der Variablen, gefolgt von dem zuzuweisenden Wert an der Eingabeaufforderung, erledigen<br> | |||
*Variablen, die auf diese Art Werte erhalten, werden aber nicht automatisch in Subshells exportiert, wie die folgende Befehlsfolge demonstriert: | |||
# x=5000 | |||
# echo $x | |||
5000 | |||
# bash | |||
# echo $x | |||
# | |||
*Im ersten Schritt wurde der Variablen ''x'' der Wert ''5000'' zugewiesen<br> | |||
*Anschließend wurde die Variable mit dem <code>echo</code>-Kommando ausgegeben<br> | |||
*In der vierten Zeile wird mit dem Kommando <code>bash</code> eine Subshell gestartet<br> | |||
*Der Versuch, die Variable mit dem <code>echo</code>-Befehl auszugeben, schlägt fehl, weil keine Vererbung der Variablen in die Subshell stattgefunden hat<br> | |||
*Wenn der Inhalt einer Variablen in einer Subshell benötigt wird, muss die Variable exportiert werden. Beispiel: | |||
# Name=Hans | |||
# echo $Name | |||
Hans | |||
# export Name | |||
# bash | |||
# echo $Name | |||
Hans | |||
*Diesmal wurde die Variable ''Name'' mit dem Kommando <code>export</code> exportiert, bevor die Subshell gestartet wurde<br> | |||
*Wie der zweite <code>echo</code>-Befehl zeigt, steht die Variable danach in der Subshell zur Verfügung<br> | |||
*Es ist aber auch möglich, die Deklaration und den Export einer Variablen in einem einzigen Schritt durchzuführen. Das wird in der ersten Zeile des folgenden Beispiels demonstriert: | |||
# export Name=Willi | |||
# bash | |||
# echo $Name | |||
Willi | |||
*Wenn Sie den Inhalt einer Variablen nicht mehr benötigen, sollten Sie diese mit dem Kommando <code>unset</code> wieder zurücksetzen.<br> | |||
*Es ist sinnvoll, zu Beginn eines Skripts zunächst alle verwendeten Variablen zurückzusetzen. Damit verhindern Sie, dass eventuell exportierte Variablen mit gleichen Bezeichnungen den Funktionsablauf Ihres Skripts stören. Beispiel: | |||
# unset Name | |||
[[Category:Linux:Bash]] | |||
[[Category:Linux:LPIC:101]] | |||
[[Category:Linux:Bash]] | [[Category:Linux:Bash]] |
Version vom 18. Oktober 2020, 17:03 Uhr
Bezeichnung
echo lässt Zeichenketten und Variablen zeilenweise auf dem Standardausgabegerät anzeigen.
Übersicht
echo [OPTION][STRING]
Optionen
Option | Beschreibung |
---|---|
-e | Von einem „\“ eingeleitete Sequenzen werden als Befehle erkannt |
-E | Von einem „\“ eingeleitete Sequenzen werden nicht als Befehle erkannt (Standardeinstellung) |
--help | Hilfe |
-n | Keine Ausgabe des am Zeilenende stehenden Zeilentrenners |
Mit der Option -e können folgende Befehle verwendet werden:
- \\ Ausgabe des Backslashs
- \a Alarm (Terminalglocke)
- \b Rücktaste ("Backspace")
- \c Keine weitere Ausgabe
- \e Escape
- \f Seitenvorschub ("form feed")
- \n Neue Zeile
- \r Wagenrücklauf ("carriage return")
- \t Horizontaler Tab
- \v Vertikaler Tab
- \xHH Zeichen aus der Zeichentabelle mit hexadezimalem Bytecode HH anzeigen
Beispiele
echo 'Das ist ein Beispiel!'
Das ist ein Beispiel!
echo -e 'Heute ist ein schöner Sommer \btag!'
Heute ist ein schöner Sommertag!
- Wenn Sie selbst eine Variable deklarieren müssen, können Sie das einfach durch Eingabe der Variablen, gefolgt von dem zuzuweisenden Wert an der Eingabeaufforderung, erledigen
- Variablen, die auf diese Art Werte erhalten, werden aber nicht automatisch in Subshells exportiert, wie die folgende Befehlsfolge demonstriert:
# x=5000 # echo $x 5000 # bash # echo $x #
- Im ersten Schritt wurde der Variablen x der Wert 5000 zugewiesen
- Anschließend wurde die Variable mit dem
echo
-Kommando ausgegeben - In der vierten Zeile wird mit dem Kommando
bash
eine Subshell gestartet - Der Versuch, die Variable mit dem
echo
-Befehl auszugeben, schlägt fehl, weil keine Vererbung der Variablen in die Subshell stattgefunden hat
- Wenn der Inhalt einer Variablen in einer Subshell benötigt wird, muss die Variable exportiert werden. Beispiel:
# Name=Hans # echo $Name Hans # export Name # bash # echo $Name Hans
- Diesmal wurde die Variable Name mit dem Kommando
export
exportiert, bevor die Subshell gestartet wurde - Wie der zweite
echo
-Befehl zeigt, steht die Variable danach in der Subshell zur Verfügung
- Es ist aber auch möglich, die Deklaration und den Export einer Variablen in einem einzigen Schritt durchzuführen. Das wird in der ersten Zeile des folgenden Beispiels demonstriert:
# export Name=Willi # bash # echo $Name Willi
- Wenn Sie den Inhalt einer Variablen nicht mehr benötigen, sollten Sie diese mit dem Kommando
unset
wieder zurücksetzen. - Es ist sinnvoll, zu Beginn eines Skripts zunächst alle verwendeten Variablen zurückzusetzen. Damit verhindern Sie, dass eventuell exportierte Variablen mit gleichen Bezeichnungen den Funktionsablauf Ihres Skripts stören. Beispiel:
# unset Name