我正在尝试使用命令行实现来更改PATH
环境变量以删除路径,因此我不必在一堆计算机上手动删除它。
我找到了这个,我似乎无法让它工作:
%Path:str1=str2%
str1
是路径,str2
为空,我不知道如何在命令行上将其设置为null。
如果还有其他方式,我很乐意尝试一下。
答案 0 :(得分:32)
我找到了这个,我似乎无法让它工作:%Path:str1 = str2%str1是路径而str2是null,我不知道如何将它设置为null命令行。
不确定为什么这对您不起作用,但这是一个可行的示例(至少在Windows XP上)。
set path=%path:c:\windows\system32;=%
这将删除“c:\ windows \ system32;”来自路径变量。确保最后有;
,否则可能会部分删除其他路径。
请记住,这只会影响命令提示符的当前实例。如果退出或在其他命令提示符下工作,则对环境变量所做的任何更改都将丢失。
答案 1 :(得分:3)
使用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 :(得分:2)
将当前进程和/或子进程的Path变量更改为在Windows启动时更改变量的默认加载状态之间存在差异。
您可能可以使用WMI进行此操作。如果没有,请在编辑系统变量时使用procmon并查看“我的电脑”正在执行的操作。这将使您能够编写脚本。
答案 3 :(得分:0)
在vbScript命令文件(.cmd)或(.bat)中,您可以使用以下命令删除环境变量:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Environment("Process").Remove("PATH")
答案 4 :(得分:0)
有一种更简单的方法,而不是使用命令提示符。右键单击"我的电脑"转到高级系统设置,在底部点击环境变量,突出显示" PAth"然后单击"编辑"。您可以添加,删除或更改路径中目录的顺序。
希望这有助于某人, 2