Изменение, чтобы удалить путь из переменной окружения PATH

Я пытаюсь использовать реализацию командной строки, чтобы изменить PATH среды PATH для удаления пути, поэтому мне не нужно вручную удалять его на куче машин.

Я нашел это, что я не могу заставить его работать:

%Path:str1=str2%

str1 - это путь, а str2 - ноль, но я не уверен, как установить его в ноль в командной строке.

Если есть другой способ, я был бы рад попробовать.

Ответы

Ответ 1

Используя VBScript, вы можете получить переменную пути:

dim shell, env, path, path_entries
set shell = createobject("wscript.shell")
set env = shell.environment("system")
path = env("path")

Затем разделите, чтобы получить массив частей:

path_entries = split(path, ";")

Установите все записи в пустую строку, чтобы удалить их:

path_entries(3) = ""

Затем восстановите путь:

path = join(path_entries, ";") ' elements in path are delimited by ";"
env("path") = path

Ответ 2

Я нашел это, и я не могу заставить его работать:% Path: str1 = str2% str1 - это путь, а str2 - null, и я не уверен, как установить его на null командной строки.

Не уверен, почему это не сработало для вас, но вот пример, который работает (по крайней мере, в Windows XP).

set path=%path:c:\windows\system32;=%

Это приведет к удалению "c:\windows\system32;" из переменной пути. Убедитесь, что у вас есть ; на конце, иначе он может частично удалить некоторые другие пути.

Помните, что это повлияет только на текущий экземпляр командной строки. Если вы уйдете или работаете в другой командной строке, любые изменения, внесенные в переменные среды, будут потеряны.

Ответ 3

Существует разница между изменением переменной Path для текущего процесса и/или дочерних процессов, изменением состояния загрузки по умолчанию переменной при запуске окон.

Возможно, вы, возможно, сможете это сделать с WMI. Если нет, возьмите procmon и посмотрите, что делает "Мой компьютер" при редактировании системной переменной. Это позволит вам написать script.

Ответ 4

В командном файле vbScript (.cmd) или (.bat) вы можете использовать следующее, чтобы удалить переменную среды:

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Environment("Process").Remove("PATH")

Ответ 5

Существует более простой способ вместо командной строки. Щелкните правой кнопкой мыши на "Мой компьютер", перейдите к расширенным системным настройкам, в нижней части щелкните "Переменные среды", выделите "PAth" и нажмите "Изменить". Вы можете добавлять, удалять или изменять порядок каталогов на вашем пути.

Надеюсь, это поможет кому-то, 2