我想对我通过命令访问的特定字符串使用变量替换。例如,如果我将某些内容复制到剪贴板中,则可以像这样访问它。
$ xclip -o -selection clipboard
Here's a string I just copied.
Run Code Online (Sandbox Code Playgroud)
如果我将它分配给一个变量,那么我可以对其进行变量替换。
$ 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.
Run Code Online (Sandbox Code Playgroud)
但是,有没有办法在不将其分配给变量的情况下进行变量替换?从概念上讲,类似这样的事情。
$ echo ${$(xclip -o -selection clipboard)/copi/knott}
bash: ${$(xclip -o -selection clipboard)/copi/knott}: bad substitution
Run Code Online (Sandbox Code Playgroud)
此语法失败,因为var应该是变量名,而不是字符串。