Перейти к содержимому

Как я могу отобразить содержимое переменной среды из командной строки в Windows 7?

409

В Windows 7, когда я запускаю командную строку, есть ли какая-либо команда для отображения содержимого переменной среды (например, переменных JAVA_HOMEили PATH)?

Я попытался с echo $PATH, echo PATHи, $PATHно ни один из них не работает.

1 088 197 просмотров
Jonas спросил 14 лет назад
J 9 392

5 ответов

456
Принятый ответ

В командной строке Windows синтаксис echo %PATH%

Чтобы получить список всех переменных среды, введите команду set

Чтобы отправить эти переменные в текстовый файл, введите команду set > filename.txt


связанные с

Почему это значение отличается от того, что я указал в свойствах компьютера?

Johnny_D · 12 лет назад · 1

@Johnny_D Вероятно, либо у вас есть переменная области пользователя, либо у вас есть переменная области сеанса (использование команды set в командной строке не сохраняет изменения после закрытия окна консоли), которое переопределяет его.

Scott Chamberlain · 12 лет назад · 2

@RedGrittyBrick, как вы отличаете те, которые установлены в системе от тех, которые предназначены только для текущего пользователя?

Pacerier · 9 лет назад · 0

@Pacerier, это будет отдельный вопрос

RedGrittyBrick · 9 лет назад · 0
RedGrittyBrick ответил 14 лет назад
R 66 369
95

В дополнение к предыдущему ответу, если вы используете Powershell echo %PATH%, не будет работать. Вместо этого вам нужно использовать следующую команду:echo $Env:PATH

Также в PS: ls env: для перечисления всех переменных окружения

George Mauer · 11 лет назад · 9

Поскольку PowerShell теперь является оболочкой по умолчанию в современных ОС Windows, за это нужно проголосовать выше. Слишком много ответов, которые больше не работают на современных Windows.

Lev · 8 лет назад · 0

@Lev. Какая у вас версия, у которой нет cmd?

Mad Physicist · 8 лет назад · 0
Gerard Yin ответил 13 лет назад
G 1 105
17

As an additional bit of information: While SET works with global or system variables, sometimes you want to write and read User variables, and this is done with the SETX command. SETX is included in the base installs of Windows beginning with Vista, but was also available in Windows XP by installing the Resource Pack.

One difference about SETX though is that you cannot read the variable out in the same command window you wrote it in. You have to write the SETX command in one Command or Powershell window, and then open a new window to read it using ECHO.

SETX can also write global or system variables.

To Set a user variable using SETX:

setx variable value 

To set a global or system variable using SETX:

setx /m variable value 

To read a user or global variable:

Remember, you must open a new Command or Powershell window to read this variable.

echo %variable% 
music2myear ответил 11 лет назад
M 30 399
7

From SET /?:

SET P 

would display all variables that begin with the letter 'P'

So for example if you want to find value of environment variable %PATH%, you can just type set path.

This is 3 characters shorter than echo %PATH%, but note that it also lists other variables starting with "path" (e.g. PATHEXT).

AXO ответил 12 лет назад
A 450
3

The solution was a bit different for me: it won't recognize the system environment variable JAVA_HOME, so I had to set JAVA_HOME as User environment variable, so that i can use %JAVA_HOME% in system environment variable setting up.

Resuming, I had to:

-add a user environment variable: %JAVA_HOME% as:

"C:\Program Files\Java\jdk1.8.0_25"; 

-add to %PATH% system environment variable:

"%JAVA_HOME%\bin;" 

-latter on command line:

echo %JAVA_HOME%, and it retrieved the correct path (before it wasn't recognizing); echo %PATH%, and it retrieved the "C:\Program Files\Java\jdk1.8.0_25\bin" composed with %JAVA_HOME% user variable;

And it worked for me. I hope it helps!!

JoaoPT ответил 11 лет назад
J 31