python命令和python3命令_命令行找不到python3命令
终端找不到python3命令
上次更新完系统后,好像就没在命令行用过Python3
这次使用Python3发现找不到Python3
我是用套件管理工具Homebrew安装的Python3
第一反应是,是不是Python3被删了,然后到相关路径去看发现有Python3
然后,就是猜测环境变量没有设置好
但是知道这个原因,还是在这里花了好多时间
环境变量这个名词忘记了,就知道是放置路径的地方
找到需要设置的文件后 .bash_profile时不知道是不是应该在这里设置,我用zsh的,不知道是不是要在.zsh_profile设置
设置的格式不清楚
设置完成后,如何让PATH变量生效 source ~/.bash_profile
这里看出我对一些概念不是很熟悉,换句话说就是基础不怎么扎实
这里我补充下涉及到的概念,知识点
echo $PATH
echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。
$在这里是取得某个变量的值
PATH 就是变量名
合起来就是在控制台显示PATH环境变量的值
会看到下面一长串的东西1/usr/local/Cellar/python/3.6.1/bin:/usr/local/bin:/usr/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/hangyi/Library/Google/:/Users/hangyi/Library/Android/sdk/platform-tools
分号(:)是分隔的意思
所以当你在terminal里面输入python3时
系统就会开始从/usr/local/Cellar/python/3.6.1/bin找起
如果在/usr/local/Cellar/python/3.6.1/bin里面找不到的话
就会往下一个/bin去搜寻,以此类推
现在,我们回到资料夹去看
python3其实就在/usr/local/Cellar/python/3.6.1/bin里面
如果不同路径里也有一份python3怎么办,在terminal打python3指令时,会按照路径的顺序来查找python3
可以用sudo vim /etc/paths 来编辑查找顺序
但问题并没有完全解决
终端重开,就找不到Python3命令,每次需要输入source .bash_profile后才可以使用?
经过查找,现在终于知道是为什么了
需要改的是zsh的配置文件(~/.zshrc),我一直改的是bash的配置文件,所以每次打开终端都不会自动加载
而我source .bash_profile加载的bash的,这也解释了,为什么我每次关终端,会提示
“关闭这个窗口将会终止正在运行的进程:python”
我在这里有个误区,我一直把zsh当做是bash的主题美化类的东西,所以.bash_profile是可以配置zsh的,虽然我知道有zsh也有配置文件。就像bash的优先级是最高的。
那么zsh是什么呢,又有什么优点呢。我知道bash是一个shell。shell又是什么?英文单词是壳的意思。我的理解是用于输入指令控制计算机硬件。
shell是什么?书上是这么说的在操作系统中,应用程序其实是在最外层,就如同鸡蛋的外壳一样,因此这个咚咚也被称呼为壳程序(shell)了!
其实可程序的功能知识提供使用者操作系统的一个接口,因此这个可程序需要可以调用其他软件才好。有很多命令行命令,man,chmod,chown, vi, fdisk等指令,这些指令都是独立的应用程序,但是我们可以通过可程序(就是命令行界面)来操作这些应用程序,让这些应用程序来运行所需的工作
“也就是说,只要能够操作应用程序的接口都能够称为壳程序。
狭义的壳程序指的是命令行方面的软件,包括本章要介绍的 bash 等。
广义的壳程序则包括图形接口的软件!因为图形接口其实也能够操作各种应用程序来调用核心工作啊!”
摘录来自: 鸟哥. “鸟哥的Linux私房菜——基础学习篇(第四版)”。 chapter10
zsh有什么特点?
这里摘录维基百科上的解释
Z Shell(Zsh) 是一种Unix shell,它可以用作为交互式的登录shell,也是一种强大的shell脚本命令解释器。Zsh可以认为是一种Bourne shell的扩展,带有数量庞大的改进,包括一些bash、ksh、tcsh的功能。
Zsh具有以下主要功能:
开箱即用、可编程的命令行补全功能可以帮助用户输入各种参数以及选项。
在用户启动的所有shell中共享命令历史。
通过扩展的文件通配符,可以不利用外部命令达到find命令一般展开文件名。
改进的变量与数组处理。
在缓冲区中编辑多行命令。
多种兼容模式,例如使用/bin/sh运行时可以伪装成Bourne shell。
可以定制呈现形式的提示符;包括在屏幕右端显示信息,并在键入长命令时自动隐藏。
可加载的模块,提供其他各种支持:完整的TCP与Unix域套接字控制,FTP客户端与扩充过的数学函数。
完全可定制化。
zsh的手册里非常有名的第一句“鉴于zsh有许多功能,手册被分为数个章节”,总计有17章节,可见其手册的长度。
一个叫做“Oh My Zsh”的用户社区收录了Zsh的第三方扩展
可以理解为具有要很多功能的shell,像智能手机,而bash则是功能机,功能较少,但基本的功能都有。
所以这里可以看出bash与zsh是两种不同的shell,所以zsh的配置得单独配置
source命令用法1source FileName
source命令作用
在当前bash环境下读取并执行FileName中的命令。
source命令通常用于重新执行刚修改的初始化文档,如.bash_profile和.profile等等
例如,假如修改了 .bash_profile 中的 Python环境变量,能够用source命令重新执行 .bash_profile 中的命令而不需要关闭终端
参考资料
维基百科
《鸟哥的Linux私房菜——基础学习篇(第四版)》
python命令和python3命令_命令行找不到python3命令相关推荐
- dos命令窗口光标闪烁_史上最全的Vim命令(二)
8. 排版 8.1 基本排版 << 向左缩进一个shiftwidth >> 向右缩进一个shiftwidth :ce(nter) 本行文字居中 :le(ft) 本行文字靠左 : ...
- shell命令查阅端口信息_短小强大的8个Linux命令,分分钟帮你提高工作效率!
今天就跟大家分享自己工作中总结的8个超级好用,但鲜为人用的Linux命令,希望对大家有帮助. 1. fc 命令用途:编辑最近的一条命令并自动执行该命令 适用场景:执行了一条很长的命令,然而命令敲错执行 ...
- python3.8.5是python3吗_科学网-Ubuntu16.04安装Python3.8.5问题及解决方法-陈超的博文
Ubuntu16.04安装Python3.8.5: 安装编译之后出现apt-get错误You might want to run 'apt-get -f install' to correct the ...
- opencv python3树莓派_树莓派4B日志七:Python3上的OpenCV安装
1.准备工作 硬件:装好系统的树莓派. 软件:Putty,VNC Viewer.(也可以直接在屏幕上操作) 2.前言 前面几期介绍了树莓派的一些基本配置,今天让我们来打开新世界的大门.安装OpenCV ...
- linux命令速查手册_值得收藏!Linux系统常用命令速查手册
作者:民工哥 出自:SegmentFault 思否 原文:segmentfault.com/a/1190000024538289 系统信息 arch #显示机器的处理器架构(1) uname -m # ...
- flac3d命令流实例大全_如何在Linux上使用xargs命令
大家好,我是良许. 在使用 Linux 时,你是否遇到过需要将一些命令串在一起,但是其中一个命令不接受管道输入的情况呢?在这种情况下,我们就可以使用 xargs 命令.xargs 可以将一个命令的输出 ...
- cp命令显示进度条_为Linux的cp和mv命令添加进度条
cp和mv可能是大家日常中使用最多的Linux命令之一.但是有一个突出的问题是这两个命令都不会有任何提示信息,这在操作大文件时候只能干等.可能大家对此已经习以为常,但是其实上也有解决解决方法,本文我们 ...
- python编程人脸识别工具_几行代码带你实现人脸识别。Python 就是这么简单
本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于腾讯云 作者:Python编程与实战 阅读文本大概需要 11分钟. ...
- python代码怎么弄颜色_布局背景颜色代码在python3中如何写?
我们想要给某个模块着重突出,以便引起大家注意的时候,通常给那个模块的背景颜色换亮一点.这种情况的操作多见于我们想要突出表格中的某个数据,或是某一项的名称.在python3中设置布局背景颜色需要通过代码 ...
最新文章
- 1.2W 字的 SQL 语法速成手册
- activiti主要API对象
- P4391 [BOI2009]Radio Transmission 无线传输
- 006_logback体系结构
- mysql innodb_undo_directory默认_MySQL innodb_undo_tablespaces相关参数
- SQL SERVER查询时间条件式写法
- darknet activate_array
- 工作组无法访问计算机用户,工作组计算机无法访问,详细教您工作组计算机无法访问怎么解决...
- Redis数据类型--字符串类型
- 学编程必备的三个网站
- PostgreSQL中生成的列
- 关于结构体数据的读写
- 用Python绘制棒棒糖图表,真的好看!
- Bitwise Operation Explained
- 常用的SQL注入语句
- 老婆怀孕记录以及如何照顾老婆总结
- leaflet 把图片放到地图上L.imageTransform或者L.imageOverlay.rotated,把视频放到地图上L.videooverlay,把geoJson放到地图上,
- R语言保存png,pdf文件出现文件损坏或空白问题的解决方案
- OSPF ASBR及4类LSA研究
- 三色螺旋线 -《跟小海龟学Python》案例代码
热门文章
- c++攻读方向_攻读硕士学位的好,坏与丑
- Asterisk在mysql数据库中添加sip账号
- druid连接池例子
- NBA表格_爬取NBA球员薪资数据【Python数据分析百例连载】
- 如何比较两幅图的相似度
- 抖音流量突然降低怎么回事?流量不稳定什么原因?
- android参考文献英文字体,英文参考文献标准字体.doc.docx
- html摩天轮效果,用CSS3 animation模拟摩天轮旋转动画效果
- 【阿里招聘】三个与阿里初恋的故事
- java8List.sort()排序常用方法