打开mac终端,输入:
echo $SHELL
如果输出的是:csh或者是tcsh,那么你用的就是C Shell。
如果输出的是:bash,sh,zsh,那么你的用的可能就是Bourne Shell的一个变种。
Mac OS X 10.2之前默认的是C Shell。
Mac OS X 10.3之后默认的是Bourne Shell。
关于几种常用不同的Shell:
- Bourne Shell(简称sh) Unix默认的Shell,是其他Shell的开发基础。(AT&Bell实验室Steven Bourne为AT&T的Unix开发的)
- C-Shell(简称csh) 基于sh,不同于sh,它提供了Bourne Shell所不能处理的用户交互特征,如命令补全、命令别名、历史命令替换等。但是,C Shell与BourneShell并不兼容。(加州伯克利大学的Bill Joy为BSD Unix开发的)
- Korn Shell(简称ksh) 它集合了C Shell和Bourne Shell的优点,并且与Bourne Shell向下完全兼容。Korn Shell的效率很高,其命令交互界面和编程交互界面都很好。(AT&T Bell实验室的David Korn开发的)
- Bourne Again Shell(简称bash) 它是Linux系统中一个默认的Shell。Bash不但与Bourne Shell兼容,还继承了C Shell、Korn Shell等优点。(自由软件基金会(GNU)开发的)
我的输出是bash。在这里只介绍Bourne Shell(sh)关于配置文件的等级介绍。
在Bourne Shell下有三种配置文件:
- / ect/profile
- /ect/bashrc
- ~/.bash_profile
注:Linux里边是.bashrc 而MAC 是.bash_profile,所以Mac下只需要设置profile和.bash_profile;
- /ect/profile(一般不建议修改这个文件)
全局(公有)配置,不管是哪个用户,登陆是都会读取该文件。
- ~/.bash_profile
一般在这个文件中添加用户级环境变量
若bash shell是以login方式执行时,才会读取此文件。该文件仅仅执行一次默认情况下,他设置一些环境变量。
在.bash_profile中设置的配置信息只有在打开终端的时候执行有效,终端关闭后,之前的设置的命令则无效;
如下图,打开终端执行jdk版本的切换命令(.bash_profile配置好的命令),切换jdk的版本,通过查看java -version命令确认;
再次关闭终端,查看java -version版本为默认版本
- /ect/bashrc(mac没有此配置文件)
全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件。
可以加入mysqlstart、mysql和mysqladmin命令的别名,保证每一个用户都可以使用这3个命令。
原文地址:https://blog.csdn.net/qq_21210473/article/details/48162887