이 변수는 BUILDNUMBER
값 230으로 설정됩니다. 230_
명령을 인쇄하고 싶지만 echo $BUILDNUMBER_
아래와 같이 출력이 비어 있습니다.
# echo $BUILDNUMBER_
# echo $BUILDNUMBER
230
답변1
이 명령은 echo $BUILDNUMBER_
설정되지 않은 변수 값을 인쇄합니다 $BUILDNUMBER_
(밑줄은 Jeff Schaller가 명확하게 지적했듯이 변수 이름에 유효한 문자입니다).
변수 이름 주위에 중괄호(중괄호)를 적용하거나 가장 엄격한 printf
도구를 사용하면 됩니다.
echo "${BUILDNUMBER}_"
printf '%s_\n' "$BUILDNUMBER"
추신: 항상 변수를 인용하십시오.
답변2
조지 바실리우(George Vasiliu)가 그랬던 것처럼설명했다$BUILDNUMBER_
, 대신에 변수를 인쇄하기 때문입니다 $BUILDNUMBER
. 원하는 것을 얻는 가장 좋은 방법은 ${BUILDNUMBER}_
George가 설명한 것처럼 사용하는 것입니다. 추가 옵션은 다음과 같습니다.
$ echo "$BUILDNUMBER"_
230_
$ echo $BUILDNUMBER"_"
230_
$ printf '%s_\n' "$BUILDNUMBER"
230_