最新MacOs配置zsh Flutter环境变量、及文件权限
指令给谁执行
-
ls、pwd、which等等这些指令到底是什么呢?这些指令发给谁呢?
这些指令被成为shell。发给shell。 -
MacOS的指令有很多。
image
早起的MacOS的默认shell是什么呢?是bash。
那现在目前最新的Mac版本最新是10.15的系统,他默认的是shell 是什么呢?是一个叫zsh的。
比如 which :查找命令位置which flutter
-
当每次执行命令时,总会遇到
imageCommand not find
,意思就是找不到你的指令的可执行文件。那这个可执行文件是什么呢?作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:834688868,不管你是大牛还是小白都欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!
就是这个flutter/bin/flutter 可执行文件。
也就是说在任意地方敲flutter命令,都会找到flutter可执行文件来进行命令,所以说这个路径得需要配置,告诉我们的shell,可执行文件在哪里。
在哪里找呢?
目前我们的MacOS有两个Shell:bash、zsh。
这个两个shell会默认加载一个文件。
如果你的Mac使用的是bash,那么配置 ~/.bash_profile
如过你的Mac使用zsh(Mac最新系统默认)那么配置~/.zshrc
怎样确定自己是哪个shell
命令:chsh
然后输入密码进入
如何切换shell
命令:chsh -s /bin/zsh
输入密码进入。我默认是bas。所以我切换zsh。然后在用上一步去查看自己是否切换成功。
配置zsh Flutter环境变量
当我切换zsh
后,执行flutter
,会出现什么样的情况呢?
是不是出现了command not found
,原因是因为我flutter的环境变量配置在bash中,然后我现在切换了zsh,所以在每次打开终端,默认运行的是zsh,所以找不到flutter的可执行文件。
所以,我们也需要吧flutter的环境变量配置到zsh中:按照上面说的配置~/.zshrc
,好!那我们把~/.bash_profile
中的flutter的环境变量搬运到~/.zshrc
中不就可以了吗?
打开~/.bash_profile
文件,把红框中的文件copy
同样的方法打开~/.zshrc
,配置,保存退出。
这个时候配置好了,那我们使用一下命令 flutter。是不是同样发现command not found
。
原因:.bash_profile、.zshrc 文件已经在启动终端的时候运行过了,不会在执行,所以该环境变量没有实效。
解决方法:1.直接执行这个文件source ~/.zshrc
。2.关掉终端重新打开。
这时候zsh就切换成功了!
Mac文件属性
命令:ls -l
从左到右的所表示的是什么意思:
[文件d:表示文件 -:非文件][权限][连接][所有者][所属组][文件大小][最新修改日期][文件名称]
改变权限命令:chmod
比如:chmod 777 /flutter
表示:所有者对这个文件是可读可写可执行,本组用户对这个文件也是可读可写可执行,非本组的用户对这个文件也是可读可写可执行。
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:834688868,不管你是大牛还是小白都欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!
以下资料在群文件可自行下载!
作者:宇轩Simid
链接:https://www.jianshu.com/p/51d96f233ee3