假设我有一个可以运行的脚本:
python hello_world.py
>>> "Hello, world!"
如何将hello_world.py配置为可执行,不用 'python'
或'./'
:
hello_world
>>> "Hello, word!"
编辑:谢谢大家的建议! shebang和路径解决方案以及python包解决方案都有效。我检查了python包解决方案,因为我喜欢通过pip install -e .
将脚本添加到我的路径上的附加功能,而无需手动编辑我的路径变量并在pip freeze > requirement.txt
调用期间捕获脚本。
答案 0 :(得分:4)
如果您使用的是Linux或Unix,在文件顶部,它通常类似于
#!/bin/python
或
#!/usr/bin/python
以这种方式,您还需要执行perms来运行文件。使用chmod
chmod +x hello_world.py
如果您没有以root身份运行,则可能需要sudo,那就是
sudo chmod +x hello_world.py
然后尝试使用
运行./hello_world.py
如果你必须免除./:
alias ./hello_world.py=hello_world
答案 1 :(得分:2)
一种解决方法是使用别名,即alias hello_world='python hello_world.py'
这当然只能在hello_world.py所在的文件夹中使用,但alias hello_world='python full/path/to/hello_world.py'
可以在任何地方使用。
这只适用于你的bash会话,但是将alias命令添加到你的〜/ .bashrc会使它成为永久性的。
答案 2 :(得分:1)
您可以执行以下操作:
答案 3 :(得分:1)
hello_world.py
重命名为hello_world
在脚本的开头添加
#!/usr/bin/env python
然后
chmod +x hello_world
注意:如果您要在 Ubuntu 中创建〜/ bin 目录,注销和再次登录(运行〜/ .profile 文件)。默认的〜/ .profile会自动将〜/ bin目录添加到你的路径中。
答案 4 :(得分:0)
它只需要可读" python hello_world.py"上班。 您可以使用chmod + x hello_world.py使其可执行。 追加'。'如果需要" ./"
,请转到PATH环境变量答案 5 :(得分:0)
另一种方法是使用setup.py安装脚本并配置这样的入口点。
entry_points = {'console_scripts':['hello_world = hello_world:main']},
答案 6 :(得分:0)
我刚刚在几个小时前第一次这样做了。你可以做的是将你的python脚本变成一个'包,然后安装该包。
我跟着this tutorial,它对我有用。如果您遵循它,您将能够输入' runner'在cmd行上,您的脚本将运行。
答案 7 :(得分:0)
您可以在PATH中创建python
脚本(或将其添加到您自己的PATH中)。
我假设你没有$HOME/bin
,如果你跳过这个 -
mkdir $HOME/bin
接下来,创建$HOME/bin/hello_world
#!/usr/bin/env python
print "Hello, World!"
然后,
chmod +x $HOME/bin/hello_world
export PATH=$PATH:$HOME/bin
然后你可以,
$ hello_world
Hello, World!