Here String: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt)
Zeile 1: Zeile 1:
=Was ist das?=
== Here-Strings in Bash ==
*Ein Bash Here-String ermöglicht die Weiterleitung eines einzelnen Strings als Eingabe für einen Befehl oder eine Anweisung.
*Mit dem Here-String-Operator (<<<) kann der String direkt im Skript definiert werden, ohne dass er in eine separate Datei geschrieben werden muss.
*Here-Strings sind nützlich, um einen Stringwert als Eingabe für Befehle zu verwenden, die normalerweise Dateien erwarten.
*Oder auch um eine Variable als Eingabe weiterzuleiten, ohne eine Zwischenspeicherung in einer Datei vornehmen zu müssen.
=Prinzip=
cat <<< "Das ist ein Text"
Das ist ein Text


=Beispiel 1=
== Was ist das? ==
*Mit dem Here-String <<< wird der Text "Das ist ein Text" an den Befehl cat weitergeleitet und direkt ausgegeben.
* Ein Bash Here-String ermöglicht die Weiterleitung eines einzelnen Strings als Eingabe für einen Befehl oder eine Anweisung.
*Im zweiten Teil wird der Here-String verwendet, um den Text "Das ist ein anderer Text" in die Variable $VAR1 zu speichern, die dann mit echo ausgegeben wird.
* Mit dem Here-String-Operator '''<<<''' kann der String direkt im Skript definiert werden, ohne dass er in eine separate Datei geschrieben werden muss.
VAR1=$(cat <<< "Das ist ein anderer Text")
* Here-Strings sind nützlich, um einen Stringwert als Eingabe für Befehle zu verwenden, die normalerweise Dateien erwarten.
echo $VAR1
* Sie können auch verwendet werden, um Variablen als Eingabe weiterzuleiten, ohne eine Zwischenspeicherung in einer Datei vorzunehmen.


=Beispiel 2=
== Prinzip ==
*Durch die Verwendung von <<< wird der String "Dies ist ein Beispiel" als Eingabe an den Befehl read weitergeleitet, der den eingelesenen Wert in der Variable $line speichert.
<syntaxhighlight lang="bash">
*Der eingelesene Wert wird dann mit echo ausgegeben.*
cat <<< "Das ist ein Text"
read -r line <<< "Dies ist ein Beispiel"
</syntaxhighlight>
echo $line
 
=Beispiel 3=
Ausgabe:
*Der Here-String <<< ermöglicht es, den String "192.168.77.1" als Eingabe für den Befehl read zu verwenden, der die IP-Adresse anhand des Trennzeichens . in das Array OKT aufteilt.
<pre>
*Die einzelnen Teile der IP-Adresse werden dann mit echo separat ausgegeben, zum Beispiel OKT0 für den ersten Teil, OKT1 für den zweiten Teil und so weiter.
Das ist ein Text
IFS=. read -ra OKT <<< "192.168.77.1"
</pre>
echo OKT0: ${OKT[0]}
 
echo OKT1: ${OKT[1]}
== Beispiel 1 ==
echo OKT2: ${OKT[2]}
* Mit dem Here-String '''<<<''' wird der Text „Das ist ein Text“ an den Befehl '''cat''' weitergeleitet und direkt ausgegeben.
echo OKT3: ${OKT[3]}
* Im zweiten Teil wird der Here-String verwendet, um den Text „Das ist ein anderer Text“ in die Variable '''$VAR1''' zu speichern, die dann mit '''echo''' ausgegeben wird.
 
<syntaxhighlight lang="bash">
VAR1=$(cat <<< "Das ist ein anderer Text")
echo $VAR1
</syntaxhighlight>
 
Ausgabe:
<pre>
Das ist ein anderer Text
</pre>
 
== Beispiel 2 ==
* Durch die Verwendung von '''<<<''' wird der String „Dies ist ein Beispiel“ als Eingabe an den Befehl '''read''' weitergeleitet, der den eingelesenen Wert in der Variablen '''$line''' speichert.
* Der eingelesene Wert wird dann mit '''echo''' ausgegeben.
 
<syntaxhighlight lang="bash">
read -r line <<< "Dies ist ein Beispiel"
echo $line
</syntaxhighlight>
 
Ausgabe:
<pre>
Dies ist ein Beispiel
</pre>
 
== Beispiel 3 ==
* Der Here-String '''<<<''' ermöglicht es, den String „192.168.77.1“ als Eingabe für den Befehl '''read''' zu verwenden.
* Der Befehl teilt die IP-Adresse anhand des Trennzeichens „.“ in das Array '''OKT''' auf.
* Die einzelnen Teile der IP-Adresse werden anschließend separat ausgegeben.
 
<syntaxhighlight lang="bash">
IFS=. read -ra OKT <<< "192.168.77.1"
echo OKT0: ${OKT[0]}
echo OKT1: ${OKT[1]}
echo OKT2: ${OKT[2]}
echo OKT3: ${OKT[3]}
</syntaxhighlight>
 
Ausgabe:
<pre>
OKT0: 192
OKT1: 168
OKT2: 77
OKT3: 1
</pre>

Aktuelle Version vom 25. November 2025, 14:56 Uhr

Here-Strings in Bash

Was ist das?

  • Ein Bash Here-String ermöglicht die Weiterleitung eines einzelnen Strings als Eingabe für einen Befehl oder eine Anweisung.
  • Mit dem Here-String-Operator <<< kann der String direkt im Skript definiert werden, ohne dass er in eine separate Datei geschrieben werden muss.
  • Here-Strings sind nützlich, um einen Stringwert als Eingabe für Befehle zu verwenden, die normalerweise Dateien erwarten.
  • Sie können auch verwendet werden, um Variablen als Eingabe weiterzuleiten, ohne eine Zwischenspeicherung in einer Datei vorzunehmen.

Prinzip

cat <<< "Das ist ein Text"

Ausgabe:

Das ist ein Text

Beispiel 1

  • Mit dem Here-String <<< wird der Text „Das ist ein Text“ an den Befehl cat weitergeleitet und direkt ausgegeben.
  • Im zweiten Teil wird der Here-String verwendet, um den Text „Das ist ein anderer Text“ in die Variable $VAR1 zu speichern, die dann mit echo ausgegeben wird.
VAR1=$(cat <<< "Das ist ein anderer Text")
echo $VAR1

Ausgabe:

Das ist ein anderer Text

Beispiel 2

  • Durch die Verwendung von <<< wird der String „Dies ist ein Beispiel“ als Eingabe an den Befehl read weitergeleitet, der den eingelesenen Wert in der Variablen $line speichert.
  • Der eingelesene Wert wird dann mit echo ausgegeben.
read -r line <<< "Dies ist ein Beispiel"
echo $line

Ausgabe:

Dies ist ein Beispiel

Beispiel 3

  • Der Here-String <<< ermöglicht es, den String „192.168.77.1“ als Eingabe für den Befehl read zu verwenden.
  • Der Befehl teilt die IP-Adresse anhand des Trennzeichens „.“ in das Array OKT auf.
  • Die einzelnen Teile der IP-Adresse werden anschließend separat ausgegeben.
IFS=. read -ra OKT <<< "192.168.77.1"
echo OKT0: ${OKT[0]}
echo OKT1: ${OKT[1]}
echo OKT2: ${OKT[2]}
echo OKT3: ${OKT[3]}

Ausgabe:

OKT0: 192
OKT1: 168
OKT2: 77
OKT3: 1