У меня есть пакетный скрипт Windows, который получает переменную среды PATH, проверяет, есть ли в ней какое-либо значение, и затем устанавливает его обратно. Например:
SET CURRPATH=%PATH%
:: do some stuff to check for a value in CURRPATH and add the value in if it is not in there
setx PATH %PATH%
Это работает, но проблема в том, что что-то еще, что я установил ранее, создало системную переменную user с именем PATH. Когда я получаю доступ к переменной% PATH% в моем пакетном скрипте, он объединяет как переменную среды пользователя PATH, так и переменную среды машины PATH. Каждый раз, когда я запускаю скрипт, переменная пользователя PATH добавляется к переменной окружения компьютера. Есть ли способ просто получить доступ к переменной окружения машины?
Хотя я мог бы просто удалить переменную среды пользователя PATH, это не очень хорошее общее решение, поскольку я не могу гарантировать, что у людей, запускающих сценарий, возникнет такая же проблема.
Обратите внимание, что это похоже на переменную PATH