Wenn ich das tue
str="Hello Worldn===========n"
Ich bekomme den n
auch ausgedruckt. Wie kann ich dann Zeilenumbrüche haben?
Akzeptierte Antwort:
In bash
Sie können die Syntax verwenden
str=$'Hello Worldn===========n'
Einfache Anführungszeichen mit vorangestelltem $
ist eine neue Syntax, die es erlaubt, Escape-Sequenzen in Strings einzufügen.
Auch printf
builtin erlaubt es, die resultierende Ausgabe in einer Variablen zu speichern
printf -v str 'Hello Worldn===========n'
Beide Lösungen benötigen keine Subshell.
Wenn Sie im Folgenden die Zeichenfolge ausgeben müssen, sollten Sie doppelte Anführungszeichen verwenden, wie im folgenden Beispiel:
echo "$str"
denn wenn Sie die Zeichenfolge ohne Anführungszeichen drucken, werden Zeilenumbrüche in Leerzeichen umgewandelt.