当前位置: 首页 > 面试题库 >

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

曾昂然
2023-03-14
问题内容

如何使用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?


问题答案:

你正在寻找的是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从任何地方简单地运行。



 类似资料:
  • 问题内容: 我创建了一个独立的Java应用程序,试图在Ubuntu 10.04终端中使用“ cd”命令更改目录。我使用了以下代码。 但是上面的代码给出了以下错误 谁能告诉我如何实施? 问题答案: 没有称为的可执行文件,因为它 不能 在单独的进程中实现。 问题在于,每个进程都有自己的当前工作目录,将其实现为一个单独的进程只会更改 该 进程的当前工作目录。 在Java程序中,您 不能 更改当前的工作目

  • 我有以下bash脚本: 不知何故cd命令失败说: CD: /home/dev/src/crypto没有这样的文件或目录。我很确定该目录存在。 另一方面,如果我执行以下操作,也会失败: 说python无法打开文件home/dev/src/crypto/util。py,因为没有这样的文件。 知道为什么吗? 这是目录/文件上ll命令的输出: ls输出-llid/主/ ls的输出-lid/home/dev

  • 问题内容: 问题:在命令行中,如何调用python脚本而不必在脚本名称前键入?这有可能吗? 信息: 我写了一个方便的脚本来从命令行访问sqlite数据库,但是我有点不喜欢键入“ python SQLsap args”,而只是键入“ SQLsap args”。我什至不知道这是否可能,但是知道是否可行。不仅仅是这个程序。 问题答案: 您可以在脚本的第一行之前添加一个shebang: 这将告诉您当前的s

  • cd 命令,是 Change Directory 的缩写,用来切换工作目录。 Linux 命令按照来源方式,可分为两种,分别是 Shell 内置命令和外部命令。所谓 Shell 内置命令,就是 Shell 自带的命令,这些命令是没有执行文件的;而外部命令就是由程序员单独开发的,所以会有命令的执行文件。Linux 中的绝大多数命令是外部命令,而 cd 命令是一个典型的 Shell 内置命令,所以 c

  • 本文向大家介绍linux中cd命令使用详解,包括了linux中cd命令使用详解的使用技巧和注意事项,需要的朋友参考一下 Linux cd 命令可以说是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用 cd 命令上的。 所以,学习Linux 常用命令,首先就要学好 cd 命令的使用方法技巧。 1. 命令格式: cd [目录名] 2. 命令功能: 切换当前目录至dirName 3

  • 问题内容: 我知道这是内置的shell,我可以使用运行它。 但这有可能由家人来执行命令吗? 编辑:我只是注意到这也是没有意义的。感谢大家的帮助。 问题答案: 加载 可执行文件 并用它替换当前程序映像。正如您正确指出的那样,它 不是 可执行文件,而是内置的shell。因此,您要运行的可执行文件是外壳本身。当然,这对您有帮助,但是如果您想对其进行明确说明,则可以使用: 由于这 将替换 您当前的过程映像