几种常见的shell
sh
sh的全称是Bourne shell,由AT&T公司的Steve Bourne开发,为了纪念他,就用他的名字命名了。
sh是UNIX上的标准shell,很多UNIX版本都配有sh。sh是第一个流行的Shell。
已经被/bin/bash所取代。
csh
C shell 使用的是“类C”语法,csh是具有C语言风格的一种shell,其内部命令有52个,较为庞大。目前使用的并不多,已经被/bin/tcsh所取代。
tcsh
tcsh是csh的增强版,加入了命令补全功能,提供了更加强大的语法支持。
ash
一个简单的轻量级的Shell,占用资源少,适合运行于低内存环境,但是与下面讲到的 bash shell 完全兼容。
bash
bash shell是Linux的默认shell。
bash由GNU组织开发,保持了对sh shell的兼容性,是各种Linux发行版默认配置的 shell。
尽管如此,bash和sh还是有一些不同之处:
一方面,bash扩展了一些命令和参数;
另一方面,bash并不完全和sh兼容,它们有些行为并不一致,但在大多数企业运维的情况下区别不大,特殊场景可以使用bash代替sh。
zsh
kali Linux当前使用的shell也是zsh,它有84个内部命令,使用起来也比较复杂。
Linux系统使用zsh,一般需要单独安装,Mac系统默认就有zsh。zsh配置复杂,相关项目:ohmyzsh
查看 Shell
查看系统中的shell
cat /etc/shells
查看当前shell
echo $SHELL