Python Bash中的路径错误
我正在使用Centos6Bash并尝试使用Python和cx_Freeze。我不熟悉路径和路径修改,这是服务器,我有点担心自己尝试它(但我必须)。当我尝试$cx\u f/Freeze时,我得到了Python Bash中的路径错误,python,linux,bash,path,cx-freeze,Python,Linux,Bash,Path,Cx Freeze,我正在使用Centos6Bash并尝试使用Python和cx_Freeze。我不熟悉路径和路径修改,这是服务器,我有点担心自己尝试它(但我必须)。当我尝试$cx\u f/Freeze时,我得到了-bash:cx\u Freeze:command not found——这同样适用于任何cx\u Freeze setup.py等。。。尝试(包括未找到模块)。我的目标是使用cx_freeze(一个Python绑定工具)。Bash的o/p如下所示 $ which python /usr/bin/py
-bash:cx\u Freeze:command not found
——这同样适用于任何cx\u Freeze setup.py等。。。尝试(包括未找到模块)。我的目标是使用cx_freeze(一个Python绑定工具)。Bash的o/p如下所示
$ which python
/usr/bin/python
$ sudo locate -b python | fgrep -w bin
[sudo] password for xyz:
/usr/bin/abrt-action-analyze-python
/usr/bin/pip-python
/usr/bin/python
/usr/bin/python-config
/usr/bin/python-pip
/usr/bin/python2
/usr/bin/python2.6
/usr/bin/python2.6-config
/usr/local/cpanel/3rdparty/bin/python
/usr/local/cpanel/bin/ispythonversion2
/usr/local/cpanel/bin/ispythonversion2inbin
cx_Freeze显然位于/usr/lib/Python2.6/site-packages,此o/p证明了这一点
[xyz@server ~]$ ls
cpu perl5 usr xyz
[xyz@server ~]$ cd usr
[xyz@server usr]$ cd lib
[xyz@server lib]$ ls
python2.6
[xyz@server lib]$ cd python2.6
[xyz@server python2.6]$ ls
site-packages
[xyz@server python2.6]$ cd site-packages
[xyz@server site-packages]$ ls
cx_Freeze cx_Freeze-4.3.1-py2.6.egg-info
[xyz@server site-packages]$ cd cx_Freeze
[xyz@server cx_Freeze]$ ls
bases finder.py freezer.pyc hooks.pyo initscripts main.py setupwriter.py windist.py
dist.py finder.pyc freezer.pyo __init__.py macdist.py main.pyc setupwriter.pyc windist.pyc
dist.pyc finder.pyo hooks.py __init__.pyc macdist.pyc main.pyo setupwriter.pyo windist.pyo
dist.pyo freezer.py hooks.pyc __init__.pyo macdist.pyo samples util.so
然后,再一次:
[xyz@server ~]$ ls
cpu cpu.py perl5 usr xyz
[xyz@server ~]$ cd usr
[xyz@server usr]$ ls
bin lib share
[xyz@server usr]$ cd bin
[xyz@server bin]$ ls
cxfreeze cxfreeze-quickstart
[xyz@server bin]$ cxfreeze-quickstart
-bash: cxfreeze-quickstart: command not found
因此,这让我对cx_Freeze安装的位置更加困惑!让事情变得更糟,正如BM所说,“等等,还有更多!”
为什么有这么多的网站包。位于/lib/和/lib64/的文件有不同的内容,而位于/lib/的文件包含我需要的内容——尽管它们都没有cx\U Freeze
(我已经从上面的示例中删除了Python、站点包和结果,它们与我创建的virtualenv相对应,因为这是我理解的东西,可能会使事情复杂化。)
编辑:
[xyz@server ~]$ echo $PATH
/opt/apache-maven-3.0.5/bin:/home/vtripathi/perl5/bin:/usr/local/bin:/bin:/usr/bin:/usr/local /sbin:/usr/sbin:/sbin:/home/vtripathi/bin
编辑-2.0:
[xyz@server ~]$ ls
cpu cpu.py perl5 usr xyz
[xyz@server ~]$ cd usr
[xyz@server usr]$ cd bin
[xyz@server bin]$ ls
cxfreeze cxfreeze-quickstart
[xyz@server bin]$ cd cxfreeze
-bash: cd: cxfreeze: Not a directory
[xyz@server bin]$ pwd
/home/xyz/usr/bin
编辑-3.0:
[xyz@server ~]$ PATH=/usr/lib/python2.6
[xyz@server ~]$ $PATH
-bash: /usr/lib/python2.6: is a directory
[xyz@server ~]$ PATH=/usr/lib/
[xyz@server ~]$ $PATH
-bash: /usr/lib/: is a directory
[xyz@server ~]$
那里有~/usr/bin吗?或者无论cx\U冻结的位置在哪里,您都不需要澄清Thx。我忘记加了。在问题的底部添加了o/p。cx_freeze是我认为在/usr/bin/-考虑到上面的o/p。在我看来它像是在~/usr/bin,如果我看到了什么,你在那里的时候可以“pwd”吗?添加了一个edit-2.0部分-如果没有帮助,请告诉我。Thx.您可以在交互式终端中以交互方式更改
路径
;它将只影响该终端中的交互式shell(而不影响系统的其余部分)。所以实验很容易。请不要忘记使用您可以选择的。解释“交互更改路径”是什么?Thx.输入您的终端PATH=/usr/bin:/bin:
somethingels并重复该操作,直到您满意您的PATH
.Thx。我想看看是否可以在路径中获得cx\u freeze at/lib。我尝试了这个选择,但没有成功。我已经在问题底部的EDIT-3.0下添加了o/p。有些事情你似乎很困惑cx\u Freeze
是一个Python模块,因此您可以通过在Python中执行导入cx\u Freeze
来使用它。可以从系统shell运行的命令是cxfreeze
~
是您的主目录(/home/xyz
)的缩写。您的cxfreeze命令位于/home/xyz/usr/bin
中,它与/usr/bin
不同。
[xyz@server ~]$ PATH=/usr/lib/python2.6
[xyz@server ~]$ $PATH
-bash: /usr/lib/python2.6: is a directory
[xyz@server ~]$ PATH=/usr/lib/
[xyz@server ~]$ $PATH
-bash: /usr/lib/: is a directory
[xyz@server ~]$
echo $PATH