Linux 中的 env 是什么
env 是环境 Environment 的缩写,正如它的名字一样,它用于 显示系统中已存在的环境变量 ,以及 在定义的环境中执行指令 ,一般位于 /usr/bin/env
。
env 作为脚本解释器指定程序
用 env 启动是因为脚本解释器在 linux 可能被安装于不同目录,所以要在 PATH 环境变量中找
1 | $ /usr/bin/env |
以 python 为例
在这里我们使用了 pyenv 来管理多版本 python,它的具体可见 https://github.com/pyenv/pyenv
它可以选用特定环境使用的 python 版本,把 ~/.pyenv/shims
作为一个垫片路径,里面是选定的 python 版本的解释器。
1 | $ ls /Users/maywzh/.pyenv/shims |
在这里选用了 python3.7,可以直接用下面命令来确定使用的版本
1 | $ env python |
用这种方式使用 python 就相当灵活,只需要配置 PATH 变量即可,不会出现因为写死解释器路径而找不到解释器的情况。
1 | #!/usr/bin/env python |
要运行该程序
1 | $ chmod +x hello.py # 为该脚本程序添加执行权限 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Serendipity!