Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie eine Variable definieren, dass Backslashes UND Variablen ausgegeben werden?
d@tenmaulwurf
11-07-2006, 14:59
Moin!
Wenn ich eine Variable so definiere:
foo='\$bar'
wird zwar der Backslash ausgegeben (so wie es sein soll), aber das $ wird entschärft, weshalb die Variable $bar nicht aufgelöst wird (soll _NICHT_ sein)
Mit:
foo=''\$bar'' <- (das sind 2 einfache Anführungsstriche hintereinander!)
wird die Variable $bar aufgelöst, jedoch der Backslash wird ignoriert.
Was aber wenn ich beides will?
Vielen Dank im voraus,
d@tenmaulwurf
Ich argumentiere mal in der bash,
foo=''\$bar'' <- (das sind 2 einfache Anführungsstriche hintereinander!)
wird die Variable $bar aufgelöst, jedoch der Backslash wird ignoriert.
Das stimmt meines Wissens nicht, der Backslash-Zeichen "escape"t doch das $Zeichen,
so daß $bar nicht interpoliert wird
wenn du allerdings das Backslash-Zeichen erst "esape"st, sollte das doch so funktionieren,
wie du es beschrieben hast.
foo="\\$bar"
Wenn du allerdings nicht interpolieren willst und das Backslash-Zeichen, so mußt du sowohl Backslash als auch $ escapen.
foo="\\\$bar"
MfG
Rahul
d@tenmaulwurf
11-07-2006, 18:12
Ich argumentiere mal in der bash,
Das stimmt meines Wissens nicht, der Backslash-Zeichen "escape"t doch das $Zeichen,
so daß $bar nicht interpoliert wird
wenn du allerdings das Backslash-Zeichen erst "esape"st, sollte das doch so funktionieren,
wie du es beschrieben hast.
foo="\\$bar"
Wenn du allerdings nicht interpolieren willst und das Backslash-Zeichen, so mußt du sowohl Backslash als auch $ escapen.
foo="\\\$bar"
MfG
Rahul
In beiden Varianten wird bei mir der Backslash nicht angezeigt :|
d@tenmaulwurf
11-07-2006, 18:17
In beiden Varianten wird bei mir der Backslash nicht angezeigt :|
Kommando zurück.
So funzt das, aber wenn ich via sed einen Platzhalter in einem Dokument durch diesen String in der Variable $foo ersetzen will verschwinden die Leerzeichen.
Ist das normal?
d@tenmaulwurf
11-07-2006, 18:34
Oh, mit 4 Backslashes kommt es dann auch im Dokument an :)
Romanday
11-07-2006, 20:27
Oh, mit 4 Backslashes kommt es dann auch im Dokument an :)
Alles braucht seine Zeit. :D
Ein wenig Geduld mußt du mitbringen.
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.