「Ubuntu」Ubuntu中的python终端配置(修改终端默认python配置,软连接,不同版本python环境配置)
前言
通过这篇博客(Ubuntu安装Python)安装完Python后,想要在终端直接启动想启动的python版本
此时直接在终端输入python2或者python3,发现系统已经配置好了python各自的版本,可以使用wihch python
查看python2的软连接位置,一般是在/usr/bin中,python3也一般是该位置;如果是别的位置,那么可能软连接被修改成了别的python的路径,可以自行到/usr/bin文件夹下使用命令ls -a python*
查看否有python的启动文件,在我这里是有的:
上面的图片中有python2和python3的启动文件,直接在终端输入./python2
能直接启动:
python3同理,那么我们此时可以确定,这里的python启动文件是系统自带的python
正文
那么我们现在要将我们自行安装python添加到终端中而不破坏python系统自带的python启动文件
1 查看系统中有那些python版本:ls /usr/bin/python*
上面的图片已经展示了,在我这里只有系统自带的python2(2.7.17)和python3(3.6.9),现在我需要把新安装的python3.6.8版本配置到这里
2 查看系统默认的python版本
查看命令:python --version
,如下图
可以看到我这里默认的python2是2.7.17版本,python3是3.6.9版本,这两个也是系统自带的python
3 用户级下的文件配置方法
cd // 回到用户目录
sudo vi ~/.bashrc // 打开当前用户的隐藏配置文件.bashrc,如果没有可以新建一个
alias python368='/usr/local/python368/bin/python3' // 在文件末尾添加该条命令路径,保存退出
source ~/.bashrc // 重新加载.bashrc文件,使其生效,不放心可以重启或注销
备注:第三条命令中的python368
是你希望在终端中启动的版本的python的名字,等号后面的路径是启动文件的路径
配置好后,在终端输入:python368
可以看到,相应版本的python已经配置好了;配置其他版本也是如此
4(应该是系统级别的)软连接配置方法
先加一个慎删
正常往里面添加是没问题的哈,但是删除软连接的时候慎重,别把系统的给删了(朴素的建议(不信你备份删一个
查看软链接
查看命令:ls -l /usr/bin/ | grep python
可以看到输入查看软链接后目录/usr/bin中建立的所有软链接,在我这里,对python2建立了三个软链接,分别是:python
,python2
,python2.7
,它们都共同指向了同一个版本(系统自带的python2.7.17),验证方法在图片中后面的几条命令;python3也是如此
新建python软链接
我们先查看系统目录下的软链接,输入命令:ls /usr/bin/python*
然后打开一个终端,添加我们后来新增python3.6.8的软链接,添加明令:
sudo ln -s python解释器路径 /usr/bin/解释器名字
其中“python解释器路径”是想添加软链接的python的启动文件路径,“解释器名字”是想要在终端中启动对应版本的启动名字,例如下面:
sudo ln -s /usr/local/python/bin/python3 /usr/bin/python368
将路径/usr/local/python/bin
下的python3
添加到了 /usr/bin
中,并命名为python368
验证一下是否真的添加:
可以看到我们已经添加了python368的路径;但是刚才我们已经在用户目录下配置了368,那么我们再添加一个测试软链接看看:
上面的图片中我们又新增了一个python-damie的软链接(达~咩),然后在终端中启动python-damie,可以看到是能正常启动的哈
删除软链接
sudo rm -rf /usr/bin/添加的python软链接名
在这里我把刚才添加的python368和python-damie删掉了:
再使用查看命令查看一下,确实删掉了,现在再执行python-damie
已经不能启动对应python了,但是python368
还可以,因为我们之前在用户级的配置文件中配置啦
再重点说一下,慎删系统自带的软链接
参考链接:参考
「Ubuntu」Ubuntu中的python终端配置(修改终端默认python配置,软连接,不同版本python环境配置)相关推荐
- 「翻译」Unity中的AssetBundle详解(一)
AssetBundles AssetBundle是一个存档文件,其中包含平台在运行时加载的特定资产(模型,纹理,预制,音频剪辑,甚至整个场景).AssetBundles可以表示彼此之间的依赖关系;例如 ...
- 「SVN」Ubuntu 版本库搭建+使用 完整教程
序 重新写一篇,发现svn有了中文版教程,一下兴致就上头.正好新项目要搭建svn环境,开一篇复习复习.发誓一定写完整! 真正开始搭建才发现上面链接里的教程并没什么用,因为需要搭建版本库使用的系统是ub ...
- 「SVN」ubuntu svn自动忽略了.a.so等文件
问题描述 系统:Ubuntu 18.04 直接使用命令svn add *添加代码到版本库,commit后才发现.a .so的文件没有添加上去,导致编译项目代码的时候编译不通过 解决办法 在home目录 ...
- python语言中的冒号_「冒号」编程语言中的冒号(:) - seo实验室
冒号 1.lisp语言中用括弧()分割语句和定义函数参数,用空格分割原子,用分号表示注释,逗号,数组中用,用冒号(:)来定义函数命令,即可以在cad命令行里输入. 2.Python中,用()定义函数参 ...
- 「聚变」前端 客户端,第十七届 D2 终端技术大会来了!
D2 的前身「前端技术论坛」已经举办了 16 届,相信有很多前端同学对它已经非常了解了.伴随着互联网技术的发展,今年的 D2 全面升级为「阿里巴巴 D2 终端技术大会」: D2 终端技术大会 (Mob ...
- 「聚变」前端 客户端 | 第十七届 D2 终端技术大会,开放报名!
D2终端技术大会 (Mobile Developer & Frontend Developer Technology Conference, 简称 D2)是由阿里巴巴终端技术委员会主办,面向全 ...
- JavaScript 教程「9」:DOM 元素获取、属性修改
什么是 Web API Web API 是指网页服务器或者网页浏览器的应用程序接口.简单来讲,就是我们在编写 JavaScript 代码时,可以通过 Web API 来操作 HTML 网页和浏览器. ...
- python与数据思维基础目录_python入门知识思维路线图及环境配置
python知识准备 掌握Python基础语法,熟悉常用API,是后面进行自动化学习的必要条件. 本章节主要内容包括 python基本语法 常用数据结构 常用操作 面向对象编程 文件处理 数据库处理 ...
- 实习手册一(Python基于Tornado框架的接口响应服务)软件下载与环境配置
目录 一.软件下载及环境配置: 1.Homebrew 2.python3.9 3.PyCharm专业版 4.MySQL 5.Navicat for MySQL 6.Redis 7.Postman 此次 ...
最新文章
- Blender中的多平面动画学习教程
- 半监督+标签传播算法
- C# 通用Clone
- nature machine intelligence
- [导入]二叉树(C#数据结构四)
- oracle登录时无效的参数,oracle – 使用bash变量时出现Sqlplus登录错误:SP2-0306:无效选项...
- 征战蓝桥 —— 2016年第七届 —— C/C++A组第4题——快速排序
- js 调用后台代码(比较实用,好记)
- 如何获取sharepoint列表_练习 34 - 获取列表元素 - Learn Python 3 The Hard Way
- mysql主从注意事项_mysql主从复制亲测,以及注意事项
- 基于Gsoap 的ONVIF C++ 库
- SCPPO(二十二):读取配置文件---程序猿必不可少的技能
- NYOJ 570欧拉函数求和(欧拉函数数论入门)
- 练习Go语言-HTTP压力测试.md
- Python高速缓存和会话库——Beaker
- 河北大学计算机系院长,徐建民(河北大学网络空间安全与计算机学院教授)_百度百科...
- 用计算机数字打喜欢你,喜欢你数字怎么表示,“我喜欢你”用数字怎么
- JQuery Ajax 参数含有特殊字符
- 中文名称:(尼姆亚,熊猫烧香)
- 从零学习Fluter(八):Flutter的四种运行模式--Debug、Release、Profile和test以及命名规范...
热门文章
- 2--mkdir命令
- VTK:图表用法实战
- JavaScript实现多项式哈希算法(附完整源码)
- boost::test模块测试树管理单元测试
- boost::spirit模块实现演示语法的普通计算器示例
- boost::histogram::accumulators::mean用法的测试程序
- boost::fusion::cons用法的测试程序
- 使用键值flyweight的Boost.Flyweight示例
- boost::container实现扩展bwd测试分配器程序
- Boost:cpu时间的实例