请问共有几种shell,他们都有什么区别?

如题所述

$SHELL是一个环境变量,它记录用户所使用的Shell类型。你可以用命令: # Shell-name 来转换到别的Shell,这里Shell-name是你想要尝试使用的Shell的名称,如ash等。这个命令为用户又启动了一个Shell,这个Shell在最初登录的那个Shell之后,称为下级的Shell或子Shell。 使用命令: # exit 可以退出这个子Shell。使用不同的Shell的原因在于它们各自都有自己的特点,下面做一个简单的介绍: 1.ash ash Shell是由Kenneth Almquist编写的,是Linux中占用系统资源最少的一个小Shell,它只包含24个内部命令,因而使用起来很不方便。 2.bash bash是Linux系统默认使用的Shell,它由Brian Fox和Chet Ramey共同完成,是Bourne Again Shell的缩写,内部命令一共有40个。Linux使用它作为默认的Shell是因为它有以下的特色: (1)可以使用类似DOS下面的doskey的功能,用上下方向键查阅和快速输入并修改命令。 (2)自动通过查找匹配的方式,给出以某字串开头的命令。 (3)包含了自身的帮助功能,你只要在提示符下面键入help就可以得到相关的帮助。 3.ksh ksh是Korn Shell的缩写,由Eric Gisin编写,共有42条内部命令。该Shell最大的优点是几乎和商业发行版的ksh完全相容,这样就可以在不用花钱购买商业版本的情况下尝试商业版本的性能了。 4.csh csh是Linux比较大的内核,它由以William Joy为代表的共计47位作者编成,共有52个内部命令。该Shell其实是指向/bin/tcsh这样的一个Shell,也就是说,csh其实就是tcsh。 5.zch zch是Linux最大的Shell之一,由Paul Falstad完成,共有84个内部命令。如果只是一般的用途,是没有必要安装这样的Shell的。Bourne Shell (/usr/old/bin/sh)
C Shell (/usr/bin/csh)
Korn Shell (/usr/bin/ksh)
POSIX Shell (/usr/bin/sh)
①输入一个系统不认识的命令(如#fuck_pig)获得系统提示
②#e cho $0 (适用:sh/ksh)
③#ps |grep $$|awk ‘{print $4}’
④#e cho $SHELL(用户默认的Shell,但不实时反映当前shell)还有在你的/etc/shells中你可以看到更多的shell:
# /etc/shells: valid login shells/bin/ash/bin/csh/bin/sh/usr/bin/es
/usr/bin/ksh/bin/ksh/usr/bin/rc
/usr/bin/tcsh/bin/tcsh/usr/bin/zsh/bin/sash/bin/zsh/usr/bin/esh/bin/dash/bin/bash/bin/rbash不同的 shell 有著不同的功能,且也彼此各異、或說"大同小異"。
常見的 shell 主要分為兩大主流:sh:burne shell (sh)
温馨提示:内容为网友见解,仅供参考
无其他回答

请问共有几种shell,他们都有什么区别?
使用不同的Shell的原因在于它们各自都有自己的特点,下面做一个简单的介绍: 1.ash ash Shell是由Kenneth Almquist编写的,是Linux中占用系统资源最少的一个小Shell,它只包含24个内部命令,因而使用起来很不方便。 2.bash bash是Linux系统默认使用的Shell,它由Brian Fox和Chet Ramey共同完成,是Bourne...

linux中shell分多少种,都有什么区别
Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有:bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。sh: 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。另外还有:ash、 csh、...

linux shell哪种更常用,这些shell各有什么特长
在大部份的UNIX系统,三种著名且广被支持的shell 是Bourne shell(AT&T shell,在 Linux 下是BASH)、C shell(Berkeley shell,在 Linux 下是TCSH)和 Korn shell(Bourne shell的超集)。这三种 shell 在交谈(interactive)模式下的表现相当类似,但作为命令文件语言时,在语法和执行效率上就有些不同...

什么是shell
Shell是计算机系统中的一种解释器,而命令行则是通过Shell与计算机交互的界面。用户可以在命令行中输入命令来操作计算机系统,Shell则负责解释并执行这些命令。通过命令行,用户可以更直接、更高效地控制计算机系统。7. Shell与图形界面 与图形界面(GUI)相比,Shell的一个主要优势是速度更快、更高效。Shell...

什么是shell?目前shell主要有哪几种版本?
shell就是文字操作系统与外部最主要的接口,是linux\/unix系统的重要概念。版本有ash,sh,csh,bash,tcsh等等。shell是操作系统最外面的一层,管理你与操作系统之间的交互:等待输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

Linux中shell 的类型有哪些。
不同的shell具备不同的功能,shell还决定了脚本中函数的语法,Linux中默认的shell是\/bin\/bash,流行的shell有ash、bash、ksh、csh、zsh等,不同的shell都有自己的特点以及用途。bash 大多数Linux系统默认使用的shell,bash shell 是 Bourne shell 的一个免费版本,它是最早的 Unix shell,bash还有一个...

Linux系统shell也有很多种吗?什么bath什么什么的
shell有多种,bash,csh,ksh,tcsh等,最常用为bash和csh,如果要从事linux相关开发,掌握bash一些常用命令是必需的,但shell编程只是linux中的一小部分,linux下程序开发工具很多,慢慢来,希望对你有帮助

linux下的 shell到底是什么啊
一、shell的分类:1、图形界面shell(Graphical User Interface shell 即 GUI shell)例如:应用最为广泛的 Windows Explorer (微软的windows系列制作系统),还有也包括广为人知的 Linux shell,其中linux shell 包括 X window manger (BlackBox和FluxBox),以及功能更强大的CDE、GNOME、KDE、 XFCE。2、...

Linux的Shell相关知识简要描述几种主流的shell及特点!!!
C shell是一种比Bourne shell更适于编程的shell,它的语法与C语言很相似。 Linux为喜欢使用C shell的人提供了Tcsh。Tcsh是C shell的一个扩展版本,Linux下的C shell则更多的考虑到了用户界面的而友好性,它支持不少新功能。例如:提供了一个命令列(command line)编辑程序,提供了命令列不全功能,...

Shell脚本的几种执行方式之区别
并且在脚本文件里面指定了正确的解释器;3、source 脚本文件或者. 脚本文件(.和脚本文件之间有空格),这种运行方式是在当前shell下运行,运行后脚本中定义的变量不会释放,这也是此种方式运行脚本与前三种的最大区别。例如在脚本中定义了name=GG,那么在脚本运行完成之后,echo $name仍会显示GG ...

相似回答