什么是shell?目前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还有一个特点,可以通过help命令来查看帮助。包含的功能几乎可以涵盖shell所具有的功能,所以一般的shell脚本都会指定它为执行路径。
csh
C shell 使用的是“类C”语法,csh是具有C语言风格的一种shell,其内部命令有52个,较为庞大。目前使用的并不多,已经被/bin/tcsh所取代。
ksh
Korn shell 的语法与 Bourne shell 相同,同时具备了 C shell 的易用特点。许多安装脚本都使用 ksh ,ksh有42条内部命令,与bash相比有一定的限制性。
tcsh
tcsh是csh的增强版,与 C shell 完全兼容。
sh
是一个快捷方式,已经被/bin/bash所取代。
nologin
指用户不能登录
zsh
目前Linux里最庞大的一种shell:zsh。它有84个内部命令,使用起来也比较复杂。一般情况下,不会使用该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就是文字操作系统与外部最主要的接口,是linux/unix系统的重要概念。版本有ash,sh,csh,bash,tcsh等等。shell是操作系统最外面的一层,管理你与操作系统之间的交互:等待输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。

扩展资料:

UNIX系统是一个分时系统。最早的UNIX系统于1970年问世。此前,只有面向批处理作业的操作系统,这样的系统对于需要立即得到响应的用户来说是太慢了。在60年代末,Kenneth Thompson和Dennis Ritchie都曾参加过交互方式分时系统Multics的设计;

而开发该系统所使用的工具是CTSS。这两个系统在操作系统的发展过程中都产生过重大影响。在此基础上,在对当时现有的技术进行精选提炼和发展的过程中,K.Thompson于1969年在小型计算机上开发UNIX系统,后于1970年投入运行。



shell是linux/unix系统的重要概念,它是内核与用户的一种接口,又可以看成一种编程语言,具有命令解释,重定向,等功能.
版本有ash,sh,csh,bash,tcsh等等

操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解
释你的输入,并且处理各种各样的操作系统的输出结果。 shell提供了你与操作系统之间通讯的方式。


什么是shell命令?windows系统也有shell命令吗?
一般来说,这个词是指操作系统中提供访问内核所提供之服务的程序。Shell也用于泛指所有为用户提供操作界面的程序,也就是程序和用户交互的层面。因此与之相对的是内核(英语:Kernel),内核不提供和用户的交互功能。

shell是什么意思?
Shell是一个在操作系统中为用户或应用程序提供交互式访问功能的界面程序。通过Shell,用户可以输入命令并与操作系统进行交互,实现对硬件和软件资源的控制和管理。下面详细解释Shell的概念和作用。Shell是一个命令行解释器,它在操作系统上提供了一个与外部接口交流的界面。Shell允许用户输入命令并通过命令来间...

shell是什么意思
Shell是一个计算机术语,通常用于指代操作系统中的命令行界面或者命令行解释器。下面详细解释Shell的含义和作用。Shell的基本定义 在计算机科学中,Shell是一个命令行界面程序,它是用户和计算机操作系统之间的接口。它允许用户通过输入命令来与操作系统进行交互,执行各种任务,如运行程序、管理文件和目录等。She...

黑客们常说的 拿到shell、 shell是什么意思? 同理求问WEBSHELL是什么...
在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。用途 一般情况下: 使用用户的缺省凭证和环境执行 shell。shell 命令重新初始化用户的登录会话。当给出该命令时,就会重新设置进程的控制终端的端口特征,并取消对端口的所有访问。然后 shell 命令为用户把...

什么是shell
POSIX shell ( sh) C shell (包括 csh and tcsh) C shell ( csh) TENEX\/TOPS C shell ( tcsh) Bourne Shell 最初的UNIX shell是由Stephen R. Bourne于20世纪70年代中期在新泽西的AT&T贝尔实验室编写的,这就是Bourne shell。Bourne shell 是一个交换式的命令解释器和命令编程语言。Bourne shell 可以运行为lo...

shell是什么意思阿!!!
在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com。它接收用户命令,然后调用相应的应用程序。同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为...

linux下的 shell到底是什么啊
在计算机科学中,是指“提供用户使用界面”的软件,通常指的是命令行界面的解析器。一般来说,shell是指操作系统中,提供访问内核所提供之服务的程序。一、shell的分类:1、图形界面shell(Graphical User Interface shell 即 GUI shell)例如:应用最为广泛的 Windows Explorer (微软的windows系列制作系统...

linux下的shell是什么?
shell是一种接口,它连接了用户和内核,使用户能够与系统进行交互操作。它接收用户输入的命令并把它送入内核去执行。是在Linux内核与用户之间的解释器程序,现在Linux通常指\/bin\/bash解释器来负责向内核翻译以及传达用户\/程序指令,shell相当于操作系统的“外壳”Linux系统提供多种不同的Shell以供选择。在...

shell的目的何在?
shell 的作用就是给用户一个途径 使用户可以与操作系统内核进行交互 如果是 win 系统 通过图形化界面来完成交互 如果是 Linux 系统 有的时候没有图形化界面 就需要使用 shell 啦

bash shell是什么?
shell 是一个命令语言解释器(command-language interpreter)。拥有自己内建的 shell 命令集。此外,shell也能被系统中其他有效的Linux 实用程序和应用程序(utilities and application programs)所调用。不论何时你键入一个命令,它都被Linux shell所解释。一些命令,比如打印当前工作目录命令(pwd),是包含...

文昌市19363487875: Linux文件系统默认使用的Shell是什么?
蹉梅裕尔: bash.解析:Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它^收用户输入的命令并把它送入内核去执行.实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核.不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由Shell命令组成的程序.每个Linux系统的用户可以拥有他自己的用户界面或Shell,用以满足他们自己专门的Shell需要. BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的Shell.

文昌市19363487875: linux系统 -
蹉梅裕尔: Linux是开源的操作系统,是目前世界上非常流行的一个操作系统.优点很多. 是有全世界各个行业的人在不断更新的操作系统; 是不需要支付昂贵购买费用的操作系统 是相对windows等系统要稳定得多的系统 是目前众多大型企业中小企业首选...

文昌市19363487875: 阐述shell程序的执行和跟踪方法 -
蹉梅裕尔: Shell是什么? 任何发明都具有供用户使用的界面.UNIX供用户使用的界面就是Shell(DOS的command熟悉吧,但UNIX的要强大的多). Shell为用户提供了输入命令和参数并可得到命令执行结果的环境. 为了不同的需要,UNIX提供了不同的Shell...

文昌市19363487875: 怎么获取shell在控制台执行的进程id -
蹉梅裕尔: 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为“批处理进程”).在某些情况下,你也许想要知道运行中的子shell的PID.这个PID信息可以在不同的情况下...

文昌市19363487875: 什么是DOS系统,怎么用? -
蹉梅裕尔: 1什么是DOS?DOS(Disk Operation System)是一类操作系统的名称,它主要包括Shell(command.com), IO接口(io.sys)两个部分.Shell是dos的外壳,负责将用户输入的命令翻译成操作系统能够理解的语言.DOS的IO接口通常实现了一组基于...

文昌市19363487875: linux shell中 ~ 符号代表什么?
蹉梅裕尔: shell命令中 代表用户的家目录 使用cd ~ 或者cd 可以转到这个目录 在bash shell awk命令中,~代表匹配正则表达式,例:awk '$0 ~ /.*/ {print}' test.txt

文昌市19363487875: 什么叫shell编程,就是linux下的各种命令的合并使用吗?什?
蹉梅裕尔: shell 不仅可以作为命令语言交互式地解析和执行用户输入的命令的功能,它还可以作为编程语言来编写程序,它与其他程序设计语言相类似,也提供变量的定义和参数的手段以及常见的程序控制结构

文昌市19363487875: dos 和windows -
蹉梅裕尔: 概念——磁盘操作系统[编辑本段]1.1什么是DOS?DOS(Disk Operation System)是一类操作系统的名称,它主要包括Shell(command.com), IO接口(io.sys)两个部分.Shell是dos的外壳,负责将用户输入的命令翻译...

文昌市19363487875: linux中fork,source和exec的区别 -
蹉梅裕尔: shell的命令可以分为内部命令和外部命令. 内部命令是由特殊的文件格式.def实现的,如cd,ls等.而外部命令是通过系统调用或独立程序实现的,如awk,sed. source和exec都是内部命令.fork 使用 fork 方式运行 script 时, 就是让 shell(parent process)...

文昌市19363487875: shell脚本怎么执行 -
蹉梅裕尔: 编写好的shell脚本(如:test),可以采取两种方式进行运行:一、 $ sh test 一般不采用这种调用方式,尤其不采用“sh<test”的调用方式,因为这种方式将禁止shell读取标准输入.也可以采用 $ ksh test 这种方式要求shell具有“可读”的访问权...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网