Using env in the Shebang of a Python Script
在 Linux 里,通常会在 script 的最开始,加上一行称为 sha-bang 的内容,用来指定运行当前 script 的解释器程序以及参数。
通常,Python 程序总以这样一行开始:#!/usr/bin/python3
。
但事实上,很多地方都推荐使用 env
这种更为通用的方式:#!/usr/bin/env python3
除了 env
本身的通用性之外,考虑到 Python 虚拟环境(比如 virtualenv
),这也确实是更加合理的方式:
Using
/usr/bin/env/
in python serves one more purpose. As python supports virtual environments, using/usr/bin/env python
will make sure that your scripts runs inside the virtual environment, if you are inside one. Whereas,/usr/bin/python
will run outside the virtual environment.
参考链接: