【问题标题】:How call python to run script on $PATH如何调用 python 在 $PATH 上运行脚本
【发布时间】:2018-05-20 19:19:50
【问题描述】:

我的 $PATH 环境变量有 /a/path/withspaces/in/it,上面有一个我想从不同位置运行的 python 脚本。

但是当我尝试使用 python3 运行它时,我得到了一个找不到文件的错误。

$ python3 prog.py

python3: can't open file 'prog.py': [Errno 2] No such file or directory

当我尝试对它应用 linux 文件命令时也会发生同样的情况:

$ file prog.py

prog.py: cannot open `prog.py' (No such file or directory)

但是,如果我在同一路径上键入 bash 脚本的名称,它们会按预期运行。

同样,如果我只输入 prog.py,我的 shell 会尝试运行它。所以我的系统可以很好地看到文件。

更重要的是,如果我 cd 到 prog.py 的实际位置,然后告诉 python3 运行它,它会按应有的方式执行。

为什么会发生这种情况,或者可能不会发生这种情况?

我怎样才能按我的意愿执行命令?

【问题讨论】:

标签: python python-3.x path environment-variables spaces


【解决方案1】:

答案是将 python 脚本正确地归为可执行文件。

(如 Jean-François Fabre 在上述评论中提供的linkhere 所述)。

也就是说,将#! /usr/bin/python3 作为脚本的第一行,除了使其成为可执行文件,然后简单地调用它来运行它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-01
    • 2012-05-04
    • 2019-09-26
    • 2020-01-10
    • 1970-01-01
    • 2022-08-06
    • 2014-11-04
    • 1970-01-01
    相关资源
    最近更新 更多