Bash 别名 --> Python 2.7 到 Python x.x
Bash alias --> Python 2.7 to Python 3.3
我正在尝试使 Python 3.4.2 成为 Linux 中的默认值(目前是 2.7.6)。我对这些东西不是很了解,但我在网上的几个地方读到你可以简单地在 ~/.bashrc
或 ~/.bash_aliases
文件中放置一个别名,如下所示:
alias python='python3'
我没有 ~/.bashrc
或 ~/.bash_aliases
文件。 . .我假设您可以创建它们。我已经做到了,但是别名似乎不起作用。我错过了什么吗?你需要文件开头的 shebang 吗?我两种方法都试过了。
感谢您提供的任何帮助!
不要这样做!
一些 linux 实用程序目前依赖于 python2.x
。如果您进行更改,它可能会破坏您的系统,因为 python3.x
不向后兼容 python2.x
。除非你完全清楚后果,否则不要这样做!
在 bash 文件中,以下内容将不起作用:
alias python='python3'
别名语法在 bash/sh 脚本执行中不可用。为了使用 bash 执行 python 命令,同时在 python 和 python3 上工作。我编写了一个函数来检查 python3 或 python 是否可用,然后将函数参数传递给 python.
的本地安装
示例代码取自在有时没有安装 python 但安装了 python3 的计算机上运行的脚本。
此代码已在 Ubuntu 18 和 16(Windows 子系统 Linux 2)上进行了测试。
#!/bin/bash
function local_python() {
_python=$(which python)
_python3=$(which python3)
python=${_python3:-_python}
echo $($python -c "")
}
curl "http://www.geoplugin.net/json.gp" \
-X GET \
-H "Accept: application/json" |
local_python "import sys, json; print(json.loads(sys.stdin.read())['geoplugin_request'])"
以上代码可以复制并粘贴到 example.sh 文件中,并且应该(只要 url 可用)return 使用您的 IP 地址。
我正在尝试使 Python 3.4.2 成为 Linux 中的默认值(目前是 2.7.6)。我对这些东西不是很了解,但我在网上的几个地方读到你可以简单地在 ~/.bashrc
或 ~/.bash_aliases
文件中放置一个别名,如下所示:
alias python='python3'
我没有 ~/.bashrc
或 ~/.bash_aliases
文件。 . .我假设您可以创建它们。我已经做到了,但是别名似乎不起作用。我错过了什么吗?你需要文件开头的 shebang 吗?我两种方法都试过了。
感谢您提供的任何帮助!
不要这样做!
一些 linux 实用程序目前依赖于 python2.x
。如果您进行更改,它可能会破坏您的系统,因为 python3.x
不向后兼容 python2.x
。除非你完全清楚后果,否则不要这样做!
在 bash 文件中,以下内容将不起作用:
alias python='python3'
别名语法在 bash/sh 脚本执行中不可用。为了使用 bash 执行 python 命令,同时在 python 和 python3 上工作。我编写了一个函数来检查 python3 或 python 是否可用,然后将函数参数传递给 python.
的本地安装示例代码取自在有时没有安装 python 但安装了 python3 的计算机上运行的脚本。
此代码已在 Ubuntu 18 和 16(Windows 子系统 Linux 2)上进行了测试。
#!/bin/bash
function local_python() {
_python=$(which python)
_python3=$(which python3)
python=${_python3:-_python}
echo $($python -c "")
}
curl "http://www.geoplugin.net/json.gp" \
-X GET \
-H "Accept: application/json" |
local_python "import sys, json; print(json.loads(sys.stdin.read())['geoplugin_request'])"
以上代码可以复制并粘贴到 example.sh 文件中,并且应该(只要 url 可用)return 使用您的 IP 地址。