Bash 스크립트 문자열 보간으로 중괄호가 그대로 유지됩니다.

Bash 스크립트 문자열 보간으로 중괄호가 그대로 유지됩니다.

아래 예제의 요청 문자열은 버전 변수를 삽입하지만 중괄호를 유지합니다. 이유를 모르겠습니다.

#!/bin/sh

version=2989
request="http://example.com/?version={$version}&therest"
echo "$request"

결과:

$ ~/script.sh
http://example.com/?version={2989}&therest

환경:

$ echo $0
-zsh

답변1

이것은 {이전입니다 $. 그것은해야한다 ${version}:)

답변2

비교하다:

$ version=1.2; echo "http://example.com/?version={$version}&therest"
http://example.com/?version={1.2}&therest
$ version=1.2; echo "http://example.com/?version=${version}&therest"
http://example.com/?version=1.2&therest

${variableName}따옴표 내에서 중괄호는 다음 과 같은 일부 구문의 일부가 아닌 한 일반 문자로 처리됩니다.

관련 정보