要使 Python 脚本在 Linux 和 bash 上可执行,可以使用 shebang
#! /usr/bin/env python
作为脚本的第一行。如果这一行恰好以 Windows 风格的换行符 \r\n(回车 - 换行)结束,而不是 Unix 风格的换行符 \n,那么 bash 将无法通过 Python 解释器运行该脚本。
我正在用Python进行跨平台开发。当我在 Windows 中工作时,自然的换行符是 \r\n。当我在 Linux 中工作时,自然的换行符是 \n。鉴于我使用 Mercurial 进行版本控制,在包含 shebang 的脚本文件中强制使用 \n 换行符的最佳方法是什么?
常见的方法是根本不自己生成外部包装器脚本,而是在您的setup.py
并让它们在包安装过程中生成。
如果您执行类似以下操作:
setup(
entry_points = {
"console_scripts": [
"script_name": "your.module.name:main",
],
}
)
...然后,在安装时,一个名为script_name
将生成并安装,并适当配置以在您当前的平台(shebang 线和所有平台)上运行。这使得使用的行尾字符变得毫无意义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)