进入终端(Terminal)为新下载的应用配置环境,是Mac生产力up up的关键一步,更是编程小白装大神的第一步。Fake it till you make it , 硅谷大神标准路径~
为应用配置环境,相当于在应用和操作系统间架桥。由此,在应用端发出的操作指令,才能准确传递给MacOS执行。shell(命令行解释器)就是这座桥。
MacOS这样基于Unix开发的操作系统,有很多种shell,比如:Bourne Again Shell(简称“bash”)、?Korn?Shell(简称“ksh”)、C Shell(简称“csh”),以及升级迭代后的Z shell(简称“zsh”)等。MacOS提供了两种shell,bash和zsh。
2020年前的macOS系统,是将bash作为默认shell。自2021年发布的macOS 12 Monterey 起,Mac上将zsh作为默认shell。因此,小白跟帖学习时,一定要注意帖中的代码操作是基于zsh 还是bash!!可别自个儿看岔了,还埋怨钓鱼帖害人😂😂
zsh能替代bash成为macOS的默认shell,那必然是升级迭代的结果,zsh提供了一些新功能和新完善。zsh与bash大部分兼容,但也存在一些差异。简单说,bash传达的操作指令,zsh一般也能传达,只是有一点点细节差异。比如,把“马冬梅”传递成“Ma Dongmei",而不是大爷连环问“马冬什么,什么冬梅,马什么梅”!!!
要辨认系统默认是哪种shell,方法很简单。看环境变量profile的前缀,究竟是zsh_profile,还是bash_profile。保持队形,可别跑偏了。
Mac当前登录交互的shell类型,可以在终端(Terminal)最上面的名称栏查看,如下图所示:
更改macOS默认shell的方法有好几种,详情可参考苹果官网Use zsh as the default shell on your Mac – Apple Support (UK)
此处本小白当然采用最简单直接的方法:打开终端,根据需要输入以下命令行
从 bash 切换到 zsh ? ?
chsh -s /bin/zsh
从 zsh 切换到?bash ? ? ? ? ? ?
chsh -s /bin/bash
关于zsh和bsh在功能特性上的异同,我简单列了一个思维导图,分享给大伙儿凑合看~
关于zsh和bsh的命令符差异,可参考这篇帖子
Zsh和Bash究竟有何不同_zsh bash 区别-CSDN博客