我想在通过命令访问的特定字符串上使用变量替换。例如,如果我将某些内容复制到剪贴板中,则可以这样访问它。
$ 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
应该是变量名,而不是字符串。
bash
。(并且再次将我推向迁移zsh
。)