Есть такие исходные данные:
В реестре переменная
JAVA_HOME объявлена, как имеющая тип
REG_EXPAND_SZ, значение
%ProgramFiles%\Java\jdk1.7.0_11.
> echo %ProgramFiles%
C:\Program Files
> echo %JAVA_HOME%
%ProgramFiles%\Java\jdk1.7.0_11
Если в переменную
JAVA_HOME добавить, например, %SystemRoot%:
%ProgramFiles%\Java\jdk1.7.0_11\%SystemRoot%
и перезапустить консоль, то
> echo %SystemRoot%
C:\Windows
> echo %JAVA_HOME%
%ProgramFiles%\Java\jdk1.7.0_11\C:\Windows
Вопрос: почему
%ProgramFiles% не раскрылось? Где хранится сама переменная
ProgramFiles? Поиск в реестре ключа с таким именем не дал что-либо похожее на переменные окружения. Однако поиск
SystemRoot тоже ничего не дает, но тем не менее она раскрывается.
Система -- Windows Vista SP1
MSys-овский
uname выдает
MINGW32_NT-6.0 VISTA-NOTEBOOK 1.0.12(0.46/3/2) 2011-07-20 17:52 i686 unknown