shebang-missing-executable-file (EXE002)
派生自 flake8-executable linter。
作用
检查缺少 shebang 的可执行 .py
文件。
为什么这不好?
在 Python 中,shebang(也称为 hashbang)是脚本的第一行,用于指定应该用于运行脚本的解释器。
如果一个 .py
文件是可执行的,但没有 shebang,它可能会用错误的解释器运行,或者根本无法运行。
如果该文件旨在作为可执行文件,请添加一个 shebang,例如
否则,从文件中删除可执行位(例如,chmod -x __main__.py
或 git update-index --chmod=-x __main__.py
)。
如果文件设置了可执行位(即,其权限模式与 0o111
相交),则该文件被视为可执行文件。因此,此规则仅在类 Unix 系统上可用,并且不在 Windows 或 WSL 上强制执行。