명령을 통해 액세스하는 특정 문자열에 변수 대체를 사용하고 싶습니다. 예를 들어 클립 보드에 무언가를 복사하면 다음과 같이 액세스 할 수 있습니다.
$ 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
.)