Как настроить глобальную среду PATH в командном файле?

11

Групповая политика в нашей среде перезаписывает переменную PATH каждый раз, когда я вхожу в систему, и, когда я запускаю «нестандартный» компьютер, она полностью ошибается (C: \ Windows против C: \ WINNT, отсутствующие каталоги и т. Д.). В настоящее время я вручную изменяю его при каждом входе в систему, но это становится утомительным.

Если я использую команду SET для изменения переменной PATH в пакетном файле, она имеет только локальную область действия, поэтому изменение относится только к командам в пакетном файле.

set PATH=C:\WINNT;C:\WINNT\System32
set PATH

Этот пакетный файл выведет новый путь, но если я запусту его set PATHв командной строке, он все равно будет исходным.

Как настроить глобальную среду PATH в командном файле? Или я могу использовать другую технику?

TallGuy
источник

Ответы:

10

Вы можете использовать команду setx :

setx PATH C:\WINNT;C:\WINNT\System32 /m

Setx доступен в Windows 2003 и более поздних версиях, но его можно загрузить в средствах поддержки для Windows XP.

Фил Росс
источник
0

Это редактируется в системных настройках -> [Переменные среды]. Там вы добавляете пути к $ PATH

kolypto
источник
Это то, что я делаю в данный момент, каждый раз, когда я вхожу в систему. Я хочу сделать это в пакетном файле, так что это может быть сделано автоматически.
TallGuy
0

Чтобы задать путь в реестре, чтобы он распространялся, вы можете создать сценарий PowerShell, который использует некоторые варианты этого:

[System.Environment]::SetEnvironmentVariable("PATH", $Env:Path + ";newpart", "user")

Но когда я попробовал это только сейчас, то посмотрел на Свойства системы> Переменные среды, он не только добавил мой тестовый путь, но и удвоил существующий. Так что эту проблему нужно решить.

На основании этой страницы .

Приостановлено до дальнейшего уведомления.
источник