我使用当前版本的Cygwin,1.7.9-1。
当我输入“$ which python”时,Cygwin输出“/ usr / bin / python”。
要确认root是我的Windows 7文件系统中的cygwin文件夹,我是“cd /”,然后是“ls”。显示的结果显示root确实是cygwin文件夹。
但是python可执行文件实际上在目录/ bin中。在/ usr / bin / python中没有任何名为“python”的可执行文件。
为什么Cygwin错误/ bin为/ usr / bin?感谢。
更新:我认为我的问题已得到解决。作为cygwin.com的参考,我发现了这个: “/ usr / bin和/ usr / lib默认情况下也是由Cygwin DLL生成的自动挂载点,与根目录的计算方式类似./ usr / bin指向安装Cygwin DLL的目录,/ usr / lib应该指向/ lib目录。这个选择是安全的,通常不应该改变。“ http://www.cygwin.com/cygwin-ug-net/using.html
更新:这是另一个很好的描述: “问:为什么C:\ cygwin \ usr \ bin从windows中看不见?答:因为它不存在。在cygwin中,/ usr / bin只是到/ bin的链接。例如,如果你”知道“文件在/ usr / bin和/ bin中,你会看到相同的文件。“ http://cs.nyu.edu/~yap/prog/cygwin/FAQs.html#usrbin
答案 0 :(得分:3)
which
输出可执行文件的路径,该命令可以在命令运行时执行(即可在PATH
上执行)。 /usr/bin
只放置PATH
(/bin
是基本命令集。有关详细信息,请参阅this question。/bin
(或更确切地说是C:\path\to\cygwin\bin
)已安装在/usr/bin
上。答案 1 :(得分:2)
嗯,您的Cygwin设置必须与我的不同。
在我的系统上,/ usr / bin和/ bin实际上是同一个目录; df
表示C:/cygwin/bin
实际上已安装为/usr/bin
。当然,/bin/python.exe
和/usr/bin/python.exe
存在并且是同一个文件(也可以称为/bin/python
和/usr/bin/python
)。
您的Cygwin是如何更新的?您确定没有/usr/bin/python
或/usr/bin/python.exe
吗?