一尘不染

如何在不使用CD-cd进入目录的情况下在命令行中使用Python脚本?是PYTHONPATH吗?

python

如何使用PYTHONPATH?当我尝试在路径中运行脚本时,找不到文件。当我进入包含该脚本的目录时,该脚本将运行。那么PYTHONPATH有什么用呢?

$ echo $PYTHONPATH
:/home/randy/lib/python

$ tree -L 1 '/home/randy/lib/python' 
/home/randy/lib/python
├── gbmx_html.py
├── gbmx.py
├── __init__.py
├── __pycache__
├── scripts
└── yesno.py

$ python gbmx.py -h
python: can't open file 'gbmx.py': [Errno 2] No such file or directory

$ cd '/home/randy/lib/python'

cd到文件目录后,它运行..

$ python gbmx.py -h
usage: gbmx.py [-h] [-b]

为什么我不能使用PYTHONPATH?


阅读 666

收藏
2020-02-18

共1个答案

一尘不染

你正在寻找的是PATH。

export PATH=$PATH:/home/randy/lib/python 

但是,要将Python脚本作为程序运行,你还需要在第一行中为Python 设置shebang。这样的事情应该起作用:

#!/usr/bin/env python

并赋予执行特权:

chmod +x /home/randy/lib/python/gbmx.py

然后,你应该可以gmbx.py从任何地方简单地运行。

2020-02-18