该变量BUILDNUMBER
设置为值 230。我希望230_
打印该命令echo $BUILDNUMBER_
,但输出为空,如下所示。
# echo $BUILDNUMBER_
# echo $BUILDNUMBER
230
答案1
该命令echo $BUILDNUMBER_
将打印未设置的变量值$BUILDNUMBER_
(下划线是 Jeff Schaller 明确指出的变量名称的有效字符)
您只需在变量名称周围应用大括号(大括号)或使用最严格的printf
工具:
echo "${BUILDNUMBER}_"
printf '%s_\n' "$BUILDNUMBER"
PS:始终引用您的变量。
答案2
正如乔治·瓦西利乌已经解释了,那是因为您打印的是变量$BUILDNUMBER_
而不是$BUILDNUMBER
.获得你想要的东西的最好方法就是使用,${BUILDNUMBER}_
就像乔治解释的那样。以下是更多选项:
$ echo "$BUILDNUMBER"_
230_
$ echo $BUILDNUMBER"_"
230_
$ printf '%s_\n' "$BUILDNUMBER"
230_