The variable BUILDNUMBER
is set to value 230. I expect 230_
to be printed for the command echo $BUILDNUMBER_
but the output is empty as shown below.
# echo $BUILDNUMBER_
# echo $BUILDNUMBER
230
bashshell-scriptvariable substitution
The variable BUILDNUMBER
is set to value 230. I expect 230_
to be printed for the command echo $BUILDNUMBER_
but the output is empty as shown below.
# echo $BUILDNUMBER_
# echo $BUILDNUMBER
230
Best Answer
The command
echo $BUILDNUMBER_
is going to print the value of variable$BUILDNUMBER_
which is not set (underscore is a valid character for a variable name as explicitly noted by Jeff Schaller)You just need to apply braces (curly brackets) around the variable name or use the most rigid
printf
tool:PS: Always quote your variables.