Переменной BUILDNUMBER
присвоено значение 230. Я ожидаю 230_
вывода команды, echo $BUILDNUMBER_
но вывод пуст, как показано ниже.
# echo $BUILDNUMBER_
# echo $BUILDNUMBER
230
решение1
Команда echo $BUILDNUMBER_
выведет значение переменной $BUILDNUMBER_
, которая не задана (подчеркивание является допустимым символом для имени переменной, как явно отметил Джефф Шаллер).
Вам просто нужно заключить имя переменной в фигурные скобки или использовать самый жесткий printf
инструмент:
echo "${BUILDNUMBER}_"
printf '%s_\n' "$BUILDNUMBER"
PS: Всегда заключайте переменные в кавычки.
решение2
Как уже сказал Джордж Василиуобъяснил, это потому, что вы печатаете переменную $BUILDNUMBER_
вместо $BUILDNUMBER
. Лучший способ получить то, что вам нужно, — использовать ${BUILDNUMBER}_
то, что объяснил Джордж. Вот еще несколько вариантов:
$ echo "$BUILDNUMBER"_
230_
$ echo $BUILDNUMBER"_"
230_
$ printf '%s_\n' "$BUILDNUMBER"
230_