Ich möchte die Variablensubstitution für eine bestimmte Zeichenfolge verwenden, auf die ich über einen Befehl zugreife. Wenn ich beispielsweise etwas in meine Zwischenablage kopiere, kann ich wie folgt darauf zugreifen.
$ xclip -o -selection clipboard
Here's a string I just copied.
Wenn ich es einer Variablen zuordne, kann ich es durch Variablen ersetzen.
$ var=$(xclip -o -selection clipboard)
$ echo $var
Here's a string I just copied.
$ echo ${var/copi/knott}
Here's a string I just knotted.
Gibt es jedoch eine Möglichkeit, eine Variablensubstitution durchzuführen, ohne sie einer Variablen zuzuweisen? Konzeptionell so etwas.
$ echo ${$(xclip -o -selection clipboard)/copi/knott}
bash: ${$(xclip -o -selection clipboard)/copi/knott}: bad substitution
Diese Syntax schlägt fehl, da es var
sich um einen Variablennamen und nicht um eine Zeichenfolge handeln sollte.
bash
. (Und drängt mich erneut in Richtung Migrationzsh
.)