我试图在Windows中添加C:\xampp\php到我的系统PATH环境变量.
我已经使用Environment Variables对话框添加了它.
但是当我输入我的控制台时:
C:\>path
Run Code Online (Sandbox Code Playgroud)
它不显示新C:\xampp\php目录:
PATH=D:\Program Files\Autodesk\Maya2008\bin;C:\Ruby192\bin;C:\WINDOWS\system32;C:\WINDOWS;
C:\WINDOWS\System32\Wbem;C:\PROGRA~1\DISKEE~2\DISKEE~1\;c:\Program Files\Microsoft SQL
Server\90\Tools\binn\;C:\Program Files\QuickTime\QTSystem\;D:\Program Files\TortoiseSVN\bin
;D:\Program Files\Bazaar;C:\Program Files\Android\android-sdk\tools;D:\Program Files\
Microsoft Visual Studio\Common\Tools\WinNT;D:\Program Files\Microsoft Visual Studio\Common
\MSDev98\Bin;D:\Program Files\Microsoft Visual Studio\Common\Tools;D:\Program Files\
Microsoft Visual Studio\VC98\bin
Run Code Online (Sandbox Code Playgroud)
我有两个问题:
PATH使用控制台(以编程方式,使用批处理文件)向我的变量添加目录?如果我set PATH=%PATH%;C:\\Something\\bin从cmd 执行然后执行cmd.exe我看到在路径中添加了这个字符串.如果我关闭并打开cmd,则该新字符串不在PATH中.如何在将来从cmd为所有进程永久更新PATH,而不仅仅是针对当前进程?我不想通过转到系统属性 - >高级 - >环境变量来执行此操作,并且更新PATH.
必须从java应用程序执行此命令(我的另一个问题).
我试图使用bat文件在Windows 7中设置PATH环境变量; 但它似乎没有用.
我正在使用这个Windows命令:
set PATH=%cd%;%path%
pause
Run Code Online (Sandbox Code Playgroud)
但是它似乎只对此cmd实例有效.我希望它是永久性的,因为我首先设置PATH,然后运行一个需要在该文件夹中找到库的程序.
我试过下面的命令通过批处理文件将一些路径附加到系统路径变量:
setx PATH "%PATH%;C:\Program Files\MySQL\MySQL Server 5.5\bin"
Run Code Online (Sandbox Code Playgroud)
运行上面的批处理文件后,我检查了系统变量路径,上面的路径不在那里.

您可以Variable value在下面看到所有窗口内容:
C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMDAPP\bin\x86;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\ProgramFiles (x86)\ATI Technologies\ATI.ACE\Core-Static;
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我遵循此过程,以便使用 powershell 永久添加 SumatraPDF 的路径。链接中的最后几个命令旨在检查路径是否确实已添加。
当我使用以下命令访问路径时,
(get-itemproperty -path 'Registry::HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment' -Name PATH).Path.split(';')
Run Code Online (Sandbox Code Playgroud)
结果包括 SumatraPDF 的路径
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Windows\System32\OpenSSH\
C:\ProgramData\chocolatey\bin
C:\texlive\2021\bin\win32
C:\Users\921479\AppData\Local\SumatraPDF
Run Code Online (Sandbox Code Playgroud)
但是,当我使用以下命令访问它时,
($env:path).split(';')
Run Code Online (Sandbox Code Playgroud)
结果不包含 SumatraPDF 的路径:
C:\Windows\system32
C:\Windows
C:\Windows\System32\Wbem
C:\Windows\System32\WindowsPowerShell\v1.0\
C:\Windows\System32\OpenSSH\
C:\ProgramData\chocolatey\bin
C:\texlive\2021\bin\win32
C:\Users\921479\AppData\Local\Microsoft\WindowsApps
Run Code Online (Sandbox Code Playgroud)
最后,实际传递sumatrapdf不起作用,这向我表明真正的路径是使用get-itemproperty命令访问的路径。
为什么注册表中设置的路径与中设置的路径不对应$env:path?我所遵循的链接中显示的过程是否有错误?我怎样才能纠正它?
我应该提到我已经尝试重新启动外壳,但它没有帮助。
尝试按照教程步骤反汇编可执行的 c# 文件,但每当我在命令提示符下键入 ildasm 时,它都会显示在开发人员 powershell 中无法识别。当我对 dll 文件执行此操作时,也会显示相同的消息。请帮忙。
windows ×6
path ×3
batch-file ×2
cmd ×2
powershell ×2
command-line ×1
ildasm ×1
java ×1
setx ×1