Linux下shell

shell的本意即“壳”,它是与核相对的一个概念。是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。

    各个操作系统都有自己的shell,Linux下除了默认的Bourne again shell(bash),还有很多其他的shell,例如 c shell(csh)、korn shell(ksh)、Bourne

shell(sh)和Tenex C shell(tcsh)等。每个版本的shell功能不相同,但各有千秋,现在的Linux系统发行版一般都是以bash作为默认的shell

  shell本身是一个c写的程序,用于与操作系统内核沟通的桥梁。shell是一种命令解释语言,也是一种功能强大的解释型程序设计语言。作为命令解释程序,shell解释用户命令,然后提交到内核处理,最后吧结果返回给用户。一般为了加快命令的运行,同事更为有效的定制shell程序,shell中定义了一些内置的命令,我们把shell自身解释执行的命令成为内置命令,如cd、pwd、exit和echo等,都是属于bash内置命令。当用户登录系统时,shell及这些命令就被载入内存,一直运行。除此,linux还有一些可执行文件,这些命令不是shell内置命令,例如ls是一个可执行文件存放在/bin/ls。这些命令只有被调用时才装入内存。

   用户登录系统后,#表示的是超级用户,*表示的是普通用户。shell执行时先判断是否为内置命令。

  shell命令格式很简单,

原文地址:https://www.cnblogs.com/Leo_wl/p/2839660.html