Fish Shell:
Zeichenketten verknüpfen

So geht’s:

Im Fish Shell fügt man Strings mit einfachem Nebeneinanderstellen zusammen:

set str1 "Hallo, "
set str2 "wie geht's?"
echo $str1$str2

Ausgabe: Hallo, wie geht's?

Variablen und Literale kann man genauso leicht kombinieren:

set name "Anja"
echo "Guten Tag, "$name"!"

Ausgabe: Guten Tag, Anja!

Auch das Anhängen mit der string Funktion ist möglich:

set greeting "Herzlich Willkommen, "
set user "Tobias"
string join '' $greeting$user

Ausgabe: Herzlich Willkommen, Tobias

Deep Dive

Historisch gesehen ist das Verketten von Strings eine Standardfunktion in den meisten Programmiersprachen und Shell-Skripts. Im Gegensatz zu manchen anderen Shells, die Operatoren wie + oder ., oder Funktionen wie concat() benötigen, macht Fish es sehr intuitiv – durch einfaches Aneinanderreihen der Strings.

Alternativen im Fish Shell sind die direkte Verwendung der echo- oder printf-Befehle zum Zusammenführen der Strings:

echo "Hallo" "Welt" # Standardausgabe ist bereits verknüpft
printf "%s%s\n" "Hallo" "Welt" # printf für formatierte Ausgabe

Hinsichtlich der Implementierung, durch den Wegfall von Konkatenierungsoperatoren, vermeidet Fish potenzielle Fehlerquellen und erhöht die Lesbarkeit des Codes.

Siehe auch