/usr/bin中的Python脚本
我正在用Python写一个比较简单的应用程序(现在只有一个文件)。我想知道怎么才能让这个Python脚本在/usr/bin目录下运行时,不需要加.py后缀。
举个例子,我希望不是在当前目录下运行
python htswap.py args
而是可以在任何目录下,直接输入
htswap args
谢谢大家的帮助!
5 个回答
2
什么是Shebang?
#!/usr/bin/env python
把这个放在你文件的开头,就可以了。
15
文件的第一行应该是
#!/usr/bin/env python
你需要去掉 .py
这个后缀,并且让这个文件可以执行,方法是使用
chmod ugo+x htswap
编辑: Thomas 正确指出,这种脚本应该放在 /usr/local/bin
而不是 /usr/bin
。请给他的回答点赞(可能会影响我的点赞数。现在这个话题有七个点赞,真是太离谱了)
49
只需要通过重命名文件来去掉 .py
后缀。然后,你需要在文件的最上面加上以下这一行:
#!/usr/bin/env python
env
是一个小程序,它会设置环境,以确保正确的 python
解释器被执行。
你还需要让你的文件可以执行,使用下面的命令:
chmod a+x htswap
然后把它放到 /usr/local/bin
目录下。这个目录比 /usr/bin
更干净,因为 /usr/bin
里的内容通常是由操作系统来管理的。