我有一个使用 shebang 的第三方脚本#!/usr/bin/env python
。
根据 python 文档,这是适用于 Python v2 和 Python v3 ( https://docs.python.org/3/using/windows.html#shebang-lines ) 的脚本的正确形式。
我的 Ubuntu (WSL) 只安装了 Python 3:
~? which python
~? which python3
/usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
我已将此添加到路径中,方法是在我的内容中添加以下内容~/.bashrc
并获取它
~? which python
~? which python3
/usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
~? . ~/.bashrc
~? env | grep PATH
PATH=/home/me/.local/bin:/home/me/bin:/usr/bin/python3:/opt/gradle/gradle-5.3.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Run Code Online (Sandbox Code Playgroud)
然而,当我运行这个脚本时,它抱怨找不到 Python。我创建了一个简短的测试文件foo
,其中包含相同的 shebang 和一个print("Hello")
:
~? ./foo
/usr/bin/env: ‘python’: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我还能做些什么来env
使用python3?
PS:我没有python 2,也不想安装它。第三方脚本的自述文件特别提到支持 Python v2 和 v3,并且根据 Python 文档本身,shebang 指出了这一点,如上所述。
PPS:添加别名并不能解决这个问题,因为它们仅在用户在提示符下调用 …
我已经使用https://askubuntu.com/a/581497/333103 上的答案安装了 gcc-7 和 g++-7 。
然后我意识到,虽然这将 g++ 版本从属于 gcc 版本,但我忘记为 gcov 版本添加一个从属。如何将 gcov 作为从属添加到此链接组?
我检查了这个人的更新替代方案,但我没有看到一种方法,而不仅仅是从头开始。如果这种情况是这样做的,那么我是否需要删除当前的更新替代组才能重新开始?
(我在 Windows 上的 Ubuntu 上使用 Bash,所以是 16.04)