Ich habe gelesen, dass es schlecht ist, Dinge zu schreiben, wie es for line in $(command)
der richtige Weg zu sein scheint:
command | while IFS= read -r line; do echo $line; done
Das funktioniert super. Was aber, wenn ich den Inhalt einer Variablen und nicht das direkte Ergebnis eines Befehls durchlaufen möchte ?
Stellen Sie sich beispielsweise vor, Sie erstellen die folgende Datei quickfox
:
The quick brown
foxjumps\ over -
the
lazy ,
dog.
Ich möchte in der Lage sein, so etwas zu tun:
# This is just for the example,
# I could of course stream the contents to `read`
variable=$(cat quickfox);
while IFS= read -r line < $variable; do echo $line; done; # this is incorrect