GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Hinzufügen von Zeilenumbrüchen zu Unix-Shell-Variablen

Außer $'\n' Sie können printf verwenden auch so:

VARIABLE="Foo Bar"
VARIABLE=$(printf "${VARIABLE}\nSomeData")
echo "$VARIABLE"

AUSGABE:

Foo Bar
SomeData

Eine gängige Technik ist:

nl='
'
VARIABLE="PreviousData"
VARIABLE="$VARIABLE${nl}SomeData"

echo "$VARIABLE"
PreviousData
SomeData

Ebenfalls üblich, um zu verhindern, dass Ihre Zeichenfolge versehentlich mit einem Zeilenumbruch beginnt:

VARIABLE="$VARIABLE${VARIABLE:+$nl}SomeData"

(Der Ausdruck ${VARIABLE:+$nl} wird zu einem Zeilenumbruch erweitert, wenn und nur wenn VARIABLE gesetzt und nicht leer ist.)


VAR="one"
VAR="$VAR.\n.two"
echo -e $VAR

Ausgabe:

eines.
.zwei


Versuchen Sie es mit $'\n' :

VAR=a
VAR="$VAR"$'\n'b
echo "$VAR"

gibt mir

a
b

Linux
  1. Arrays in der Unix-Bourne-Shell?

  2. Shell-Skript mit Funktion und Parameter als Variablen?

  3. Funktionen in Shell-Variablen?

  4. Zeilenumbruch nach einer unterbrochenen Zahlenfolge einfügen Awk/unix/shell Scripting?

  5. Wie konvertiere ich Hex in ASCII-Zeichen in der Linux-Shell?

So verwenden Sie Variablen in Shell-Skripten

So verwenden Sie den Echo-Befehl ohne Zeilenumbruch

Addieren Sie eine Spalte mit Zahlen in der Unix-Shell

Bearbeiten Sie das Shell-Skript, während es ausgeführt wird

Hinzufügen von Benutzern zu sudoers durch Shell-Skript

Welchen Umfang haben exportierte Unix-Shell-Variablen?