#shell #unix #ksh
#оболочка #unix #ksh
Вопрос:
Я хочу добавить суффикс (0) к переменной, содержащей значение в Kshell, используя сценарии оболочки, а затем отобразить переменную суффикс на экране
Например,
abc.ksh 35 14063
То, что я пробовал, это
var=$2
echo " ( value should be $var) "
ВЫВОД должен быть 140630
Но у меня это не работает..Чего мне в этом не хватает.
Ответ №1:
Если вам нужно выделить имена переменных, которые будут развернуты внутри строки в двойных кавычках, содержащей другие элементы, используйте ${...}
, т.Е. заключите имя переменной в {}
:
echo "${var}0"
Это относится ко всем оболочкам, подобным Bourne (совместимым с POSIX), таким как bash
, zsh
и dash
.
Комментарии:
1. Спасибо, теперь получаю ожидаемый результат, но можете ли вы сказать мне, в чем была проблема в моем подходе
2. @user3449519: Если вы это сделаете,
echo "$var0"
тоksh
не будете знать, что это всего лишьvar
часть имени переменной, и вместо этого предположите, что имеется ссылка на имя переменнойvar0
, учитывая, что цифры являются допустимыми символами в именах переменных. Заключаяvar
в{}
, вы даете команду оболочке учитывать только текст между{
и}
именем переменной.