在 AWS 中将 python3.5 设为默认值?
Posted
技术标签:
【中文标题】在 AWS 中将 python3.5 设为默认值?【英文标题】:make python3.5 as default in AWS? 【发布时间】:2017-07-20 16:20:08 【问题描述】:有没有办法让python3.5成为AWS中的默认python。 每次我下次尝试连接时,python2.7 是默认版本,pip 6 是最后一个版本,因为我知道我在几分钟前确实更新了它。 这是我遵循的方法:amazon_link
这里是亚马逊告诉版本的另一个链接,实际上它们在 3.5 another_link
提前谢谢你,:) 最好的祝福
【问题讨论】:
【参考方案1】:alternatives --set python /usr/bin/python3.5
如果你愿意,然后返回
alternatives --set python /usr/bin/python2.7
如果你想看看它当前指向什么
alternatives --display python
这是一个系统范围的设置,不仅适用于当前用户。系统设置存储在/etc/alternatives
【讨论】:
# alternatives -h
alternatives version 1.3.49.3 - Copyright (C) 2001 Red Hat, Inc. This may be freely redistributed under the terms of the GNU Public License.
# uname -a
Linux hostname 4.14.109-80.92.amzn1.x86_64 #1 SMP Mon Apr 1 23:07:39 UTC 2019 x86_64
x86_64 x86_64 GNU/Linux` ` yum whatprovides $(which alternatives) 加载的插件:优先级、更新-motd、升级-帮助程序chkconfig-1.3。 49.3-2.14.amzn1.x86_64 : 用于维护 /etc/rc*.d 层次结构的系统工具 Repo : amzn-main 匹配自: 文件名 : /usr/sbin/alternatives`【参考方案2】:
一个简单的安全方法是使用alias
。将其放入~/.bashrc
或~/.bash_aliases
文件中:
别名 python=python3
Example
$ python --version
Python 2.7.6
$ python3 --version
Python 3.4.3
$ alias python=python3
$ python --version
Python 3.4.3
【讨论】:
是的,我做到了,但是当我断开连接然后重新连接时,python 默认为 2.7 和 pip 6 ;我给他们留下了 python 3.5 和 pip 9 我正在使用 EC2 免费的 linux ami,如果这可以改变一些东西的话! 这种方法会产生更多的混乱。因为pip会在python2.7下继续安装你的依赖。 那么你应该使用 pip3 而不是 pip 安装【参考方案3】:默认情况下,awscli-bundle 安装脚本在 Python 的系统默认版本下运行。要回答您的问题,您需要知道要使用的 Python 版本的路径。 然后运行:
$ sudo /path/to/python/version awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
在我的情况下,我会运行:
$ sudo /usr/local/bin/python3.7 awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
【讨论】:
【参考方案4】:又是我 :) 我找到了答案,问题是我正在使用全局 python 和 pip,而 AWS 在每次连接时都会刷新它。 我创建了 un 环境并在里面更新了 python 和 pip,效果很好。
【讨论】:
【参考方案5】:执行上述操作:alias python=python36
在 ~.bashrc 文件中(使用 emacs、vim、您最喜欢的编辑器 - emacs ~.bashrc
)然后保存文件。
然后在命令行终端输入:source ~/.bashrc
(使更改生效)
【讨论】:
以上是关于在 AWS 中将 python3.5 设为默认值?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ASP .NET Core 2.1 中将登录页面设为默认路由?
在 select2 中:如何在 rails 中将初始/默认 select2 选项设为空白?