如何从任何目录中的终端执行python命令行实用程序

时间:2013-01-01 20:23:12

标签: python macos command-line

我刚刚编写了一个python脚本来执行一些批处理文件操作。我想知道如何将它保存在一些常见的路径中,比如其他命令行实用程序,如cd,ls,grep等。

我期望从任何目录中完成这样的事情 -

$ script.py arg1 arg2

3 个答案:

答案 0 :(得分:1)

只需将脚本目录放入PATH环境变量中,或者将脚本放在PATH中已有的位置。在Unix系统上,通常使用/home/<nick>/bin作为自己的脚本,并将其添加到PATH。

答案 1 :(得分:0)

将存储的目录添加到PATH变量中?从你的提示,我猜你正在使用类似sh的shell,并且从你的标签中,我进一步假设OS X.进入你的.bashrc并进行必要的更改。

答案 2 :(得分:0)

另一种方法是创建一个带入口点的python包并安装程序,而不是更改$PATH(使用setuptools中的setup.py)。这有一些优点:

  • 在shell之外工作
  • 减少系统范围的配置量,或者至少将其全部放在包装旁边。

有关详细信息,请参阅Explain Python entry points?python: simple example for a python egg with a one-file source file?

这样做的好处是可以将所有设置保存在一个位置。

您可以使用--develop选项,以便仍然可以编辑代码和--user选项,以避免为其他用户弄乱python。