我最近不得不重新安装Cygwin并且这样做,我遇到了一些应用程序的问题,因为Cygwin似乎被附加到我的PATH环境变量。我试图按照这些说明https://www.java.com/en/download/help/path.xml删除它,但发生了一些奇怪的事情。如果我在'环境变量'下查看Path的值,Cygwin就不存在;但是如果我在cmd.exe中输入PATH,我会看到Cygwin会在PATH的末尾附加。你能帮我知道从PATH中删除Cygwin吗?
例如,这就是我在环境变量窗口中看到的路径值:
路径= C:\ Program Files(x86)\ Intel \ iCLS Client \; C:\ Program FILES \英特尔\的ICL 客户端\; C:\ ORACLE \ 11g_R2_x64 \管理\ 11.2.0 \ Client_1与\ BIN; C:\ ProgramData \ ORACLE \的Java \ javapath;的%SystemRoot%\ SYSTEM32;的%SystemRoot%;%SYSTEMROOT%\ SYSTEM32 \ WBEM;% SYSTEMROOT%\ SYSTEM32 \ WindowsPowerShell \ V1.0 \;%SYSTEMROOT%\ SYSTEM32 \ WindowsPowerShell \ V1.0 \; C:\ PROGRAM Files \ Intel \ Intel(R)Management Engine Components \ DAL; C:\ Program Files (x86)\ Intel \ Intel(R)管理引擎组件\ DAL; C:\ Program Files \ Intel \ Intel(R)Management Engine Components \ IPT; C:\ Program Files (x86)\ Intel \ Intel(R)管理引擎 组件\ IPT;%SYSTEMROOT%\ System32下\ WindowsPowerShell \ V1.0 \; C:\ APPS \ Anaconda3; C:\ APPS \ Anaconda3 \脚本; C:\ APPS \ Anaconda3 \库\ BIN
这就是我在cdm.exe中看到的:
PATH PATH = C:\ Program Files(x86)\ Intel \ iCLS Client \; C:\ Program Files \ Intel \ iCLS Clien 吨\; C:\甲骨文\ 11g_R2_x64 \管理员\ 11.2.0 \的Client_1 \ BIN; C:\ ProgramData \甲骨文\ 的Java \ javapath; C:\ WINDOWS \ SYSTEM32; C:\ WINDOWS; C:\ WINDOWS \ SYSTEM32 \ WBEM; C:\ WINDOWS \ System32下\ WindowsPowerShell \ V1.0 \; C:\ Windows \ System32下\ WindowsPowerShell \ V1.0 \; C: \ Program Files \ Intel \ Intel(R)Management Engine Components \ DAL; C:\ Program Files(x86)\ Intel \ Intel(R)Management Engine Components \ DAL; C:\ Program Files \ Intel \ Int el(R)Management Engine 组件\ IPT; C:\ Program Files(x86)\ Intel \ Intel(R)管理 发动机 组件\ IPT; C:\ Windows \ System32下\ WindowsPowerShell \ V1.0 \; C:\应用 小号\ Anaconda3; C:\ APPS \ Anaconda3 \ Scripts中; C:\ APPS \ Anaconda3 \图书馆\ BIN; C:\ BLP \ DAPI; C:\ BLP \ DAPI \ DDE; C:\ APPS \ cygwin64 \ BIN
正如你所看到的,在第二种情况下我有Cygwin,而在第一种情况下我没有。
更新
感谢Patrick的回答。为了补充,在Windows中,您应该能够从控制面板编辑用户和系统环境变量,如此屏幕截图所示:
答案 0 :(得分:1)
Windows中有两个PATH变量。这两个页面都可用于环境变量。一个位于顶部窗格(用户变量),另一个位于第二个窗格(系统变量)中。它们都被称为PATH,但它们是独立且不同的实体。当您启动cmd.exe时,您最终得到的PATH变量是组合这两个变量的结果。要解决此处遇到的问题,请返回“环境变量”窗格并检查两个版本(用户和系统)。基于上面的PATH变量,我怀疑用户路径将包含以下三个条目:
C:\blp\DAPI;
C:\blp\DAPI\DDE;
C:\Apps\cygwin64\bin
这是cmd.exe PATH中唯一的功能差异,另一个是在扩展了SYSTEMROOT之类的变量之后。您应该能够删除那里的Cygwin目录。
答案 1 :(得分:0)
我的问题有所不同,但仍将我带到这里,所以希望其他人可以从中受益。
就我而言,C:\cygwin64\bin
不存在于用户变量 PATH 或系统变量 PATH 中。但是,每当我运行 python
时,它都使用存储在 C:\cygwin64\bin
中的可执行文件,而不是我安装 python 的位置。
(通过在 PowerShell 中运行 Get-Command python | Select-Object -ExpandProperty Definition
确认了这一点)。
事实证明我的问题是无论出于何种原因我的系统变量路径也包含C
。是的,只需C
。删除它有效地从我的路径(以及根 C:\ 目录)中删除了 C:\cygwin64\bin
。
因此,如果您遇到这样的问题,即您的路径中没有的东西表现得好像它是一样的,请检查是否已添加该项目的父目录。