コマンドを介してアクセスされる特定の文字列に対して変数置換を使用したいと思います。たとえば、クリップボードにコピーした内容には、次のようにアクセスできます。
$ xclip -o -selection clipboard
Here's a string I just copied.
変数に割り当てると、変数置換を実行できます。
$ 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.
しかし、変数に代入せずに変数置換を実行する方法はありますか?概念的にはそうです。
$ echo ${$(xclip -o -selection clipboard)/copi/knott}
bash: ${$(xclip -o -selection clipboard)/copi/knott}: bad substitution
var
文字列以外の変数名が必要なため、この構文は失敗します。