Это потому, что имя с точкой - и вы можете поверить, что ваша оболочка здесь - не является допустимым идентификатором. От man bash
:
name
Слово, состоящее только из буквенно-цифровых символов и символов подчеркивания и начинающееся с буквенного символа или символа подчеркивания. Также называется идентификатором.
Точка не является буквенно-цифровым символом и не подчеркиванием. Вы можете создать что-то вроде:
env mule.home=/Users/chandra/mule/
Но вы не сможете прочитать это, насколько я знаю. Кроме того, bash должен помешать вам даже создавать эти идентификаторы в первую очередь.
Мое предложение состояло бы в том, чтобы вместо этого создать переменную окружения с подчеркиванием и, возможно, использовать слова UPPERCASE
, что является обычной практикой.
Или используйте другую оболочку, которая поддерживает точки в переменных окружения, например, csh
и tcsh
.