0%

更好的Shebang使用方式

在Linux系统的脚本第一行我们通常用 shebang语句来指明解释器路径, 一方面有的脚本没有文件后缀名, 需要通过shebang语句指明系统才知道要用什么解释器运行. 另一方面有时候为了兼容性我们会指明使用标准位置的系统安装版本解释器.

但我发现有时候我们并不能确定使用者把我们需要类型的解释器装到了地方, 如果我们只想指出使用的解释器类型而不是具体路径, 可以使用/usr/bin/env命令. 比如如果我们想用Python3解释器执行一个脚本, 可以在第一行加:

1
#! /usr/bin/env python3

env会调用用户$PATH中首先出现的解释器版本.

当然对于更复杂的情况更建议专门写一段程序来决定用哪个解释器.

感谢您的认可!