Eu gostaria de usar a substituição de variável em uma sequência específica que eu acesso através de um comando. Por exemplo, se eu copiar algo para a minha área de transferência, posso acessá-lo assim.
$ xclip -o -selection clipboard
Here's a string I just copied.
Se eu atribuí-lo a uma variável, então posso fazer a substituição da variável.
$ 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.
No entanto, existe uma maneira de fazer a substituição de variáveis sem atribuí-la a uma variável? Conceitualmente, algo assim.
$ echo ${$(xclip -o -selection clipboard)/copi/knott}
bash: ${$(xclip -o -selection clipboard)/copi/knott}: bad substitution
Essa sintaxe falha, porque var
deve ser um nome de variável, não uma sequência.
bash
. (E me empurra de novo para migrar parazsh
.)