PATH环境变量在cmd和系统属性中不同

问题描述:

我遇到了PATH环境变量的问题。如果我看PATH在系统属性中的环境变量,我得到这个(为便于阅读,添加新行):PATH环境变量在cmd和系统属性中不同

C:\app\User\product\11.2.0\dbhome_1\bin;C:\Python34\;C:\Python34\Scripts; 
C:\Program Files\Common Files\Microsoft Shared\Windows Live; 
C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live; 
C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem; 
C:\Windows\System32\WindowsPowerShell\v1.0\; 
C:\Program Files (x86)\Windows Live\Shared;C:\Program Files(x86)\CMake\bin; 
C:\Program Files\Microsoft\Web PlatformInstaller\; 
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\; 
C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\; 
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\; 
C:\Program Files (x86)\Livestreamer;C:\Program Files (x86)\Git\cmd; 
C:\MinGW\bin;C:\Program Files (x86)\Skype\Phone\; 
C:\Program Files\Haskell Platform\7.10.3\mingw\bin; 
C:\Program Files\Microsoft Network Monitor 3\; 
C:\Program Files\Java\jdk1.8.0_20\bin;C:\Users\User\Anaconda3; 
C:\Users\User\Anaconda3\Scripts;C:\Users\User\Anaconda3\Library\bin; 
C:\Users\User\Anaconda\Lib\site-packages;C:\gradle\bin 

但是,如果我打开CMD与运行对话框,并写PATH,我得到:

PATH=C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Haskell\bin;C:\Program 
Files\Haskell Platform\7.10.3\lib\extralibs\bin;C:\Program Files\Haskell Platfo 
rm\7.10.3\bin;C:\gurobi605\win64\bin;C:\Perl\site\bin;C:\Perl\bin;C:\app\User\pr 
oduct\11.2.0\dbhome_1\bin;C:\Python34\;C:\Python34\Scripts;C:\Program Files\Comm 
on Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Micro 
soft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem 
;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Windows Live 
\Shared;C:\Program Files(x86)\CMake\bin;C:\Program Files\Microsoft\Web Platform 
Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\P 
rogram Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program File 
s (x86)\Microsoft SDKs\TypeScript\1.0\;C:\Program Files (x86)\Microsoft SQL Serv 
er\120\DTS\Binn\;C:\Program Files (x86)\Livestreamer;C:\Users\User\AppData\Roami 
ng\npm;C:\Program Files (x86)\Git\cmd;C:\MinGW\bin;C:\Program Files\Microsoft SQ 
L Server\120\Tools\Binn\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\1 
10\Tools\Binn\;C:\Program Files\Microsoft SQL Server\120\DTS\Binn\;C:\Program Fi 
les (x86)\Microsoft SQL Server\120\Tools\Binn\ManagementStudio\;C:\Program Files 
(x86)\Microsoft SQL Server\120\Tools\Binn\;C:\Program Files (x86)\Skype\Phone\; 
C:\Program Files (x86)\MiKTeX 2.9\miktex\bin\;C:\Program Files\Haskell Platform\ 
7.10.3\mingw\bin;C:\Program Files\Microsoft Network Monitor 3\ 

我可以以某种方式使它们相同吗?我需要在系统属性中使用PATH,而不是命令行中的PATH。

我试着在命令行中使用set PATH="(new path)"更改路径,但只是暂时更改它。如果我关闭并打开一个新的控制台窗口,则会返回。

我也试过setx PATH "(new path)"但它也没有改变任何东西。

我使用Windows 7家庭高级版64位

+0

你是问他们是否在内容上有差异,或者如何在CMD中的分号之后加上分号? –

+0

我想知道如何使它们相同。无法弄清楚如何永久更改cmd PATH。它在帖子中提到。无论如何已经解决了。 – devil0150

这是因为变量PATH具有不同的范围,因此可以有不同的内容。这些示波器是usermachinesetx设置用户变量(HKEY_CURRENT_USER),但是如果添加开关/m,则将在系统范围内设置这些变量(HKEY_LOCAL_MACHINE)。

系统属性显示user范围变量的内容,而echo %PATH%显示系统范围的内容。

如果你想在两个版本中都有相同的内容,你可以使用PowerShell,如here所述。

+0

我只是在powershell中试过“$ env:Path =(我想要的路径)”,就像链接说的那样,但我在cmd中看到的路径不会改变。我是否设置了系统或用户PATH?我如何设置其他? – devil0150

+0

看来它只是改变了用户的路径。我通过注册表更改了系统路径。 – devil0150

+1

对于系统范围设置和环境设置环境变量(“路径”,“ Fairy

在Windows中有两种类型的变量。用户变量和系统变量。你可以看到并编辑它的。打开系统属性,打开高级选项卡,点击环境变量按钮。刚才补充说,你是否需要适当的变量区域。