Echo: Unterschied zwischen den Versionen

Aus Foxwiki
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