Wie concat variable und string in bash-Skript
Wie concat variable und string in bash-Skript ?
val1 = Variable1 + "any string "
zB :
val1 = $i + "-i-*"
wobei i = 24thMarch
Möchte ich val1 echo :
24thMarch-i-*
Was ist die richtige richtige Lösung zu gelangen ?
val1="$i-i-*"
funktionieren sollte. Bezüglich deiner ersten Frage: val1="${Variable1}any string"
(Hinweis: die curlies).mögliche Duplikate von die string-Verkettung in der bash-Skript
uuups, gerade gesehen, dass @gniourf bereits die gleiche Idee hatten wie ich in meiner Antwort.
InformationsquelleAutor Ashish Karpe | 2015-09-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zeichenfolgen verkettet werden standardmäßig in der shell.
Es ist allgemein als gute Praxis zu wickeln variable Erweiterungen in Anführungszeichen gesetzt werden.
Können Sie dies auch tun:
Die geschweiften Klammern sind nützlich beim Umgang mit einer Mischung von Variablennamen und Zeichenketten.
Beachten Sie, dass es sollte keine Leerzeichen rund um den
=
im Einsatz.Ich habe nicht erwähnt nichts über die einfachen Anführungszeichen. Im zweiten Beispiel, die geschweiften Klammern sind notwendig, trennen Sie die Variablennamen mit den wörtlichen text. Zugegeben, die geschweiften Klammern rund um die zweite variable nicht benötigt, da die keine Zweideutigkeit. Die Anführungszeichen im zweiten Beispiel überflüssig ist, weil es keine Räume, aber Sie tun nicht Schaden.
die geschweiften Klammern sind nicht erforderlich, wenn Sie möchten parseable-code mit doppelten Anführungszeichen. Lesen Sie es, ohne die geschweiften Klammern ist eine andere Geschichte..
InformationsquelleAutor Tom Fenech
Spät für die party, meine 2 Cent für andere Lösungen., funktioniert auch in
zsh
:val1="$i-i-*"
InformationsquelleAutor Timo