liunx命令简介

  Shell是文本解释器程序的统称,所以包括了不止一种Shell。常见的Shell有sh、bash、ksh、rsh、csh等。sh的全名是Bourne Shell。名字中的玻恩就是这个Shell的作者。而bash的全名是Bourne Again Shell。最开始在Unix系统中流行的是sh,而bash作为sh的改进版本,提供了更加丰富的功能。一般来说,都推荐使用bash作为默认的Shell。其他Linux系统中广泛安装sh,都是出于兼容历史程序的目的。

  

Shell命令可以分为如下三类:

  • Shell内建函数(built-in function)
  • 可执行文件(executable file)
  • 别名(alias)

  Shell的内建函数是Shell自带的功能,而可执行文件是保存在Shell之外的脚本,提供了额外的功能。Shell必须在系统中找到对应命令名的可执行文件,才能正确执行。我们可以用绝对路径来告诉Shell可执行文件所在的位置。如果用户只是给出了命令名,而没有给出准确的位置,那么Shell必须自行搜索一些特殊的位置,也就是所谓的默认路径。Shell会执行第一个名字和命令名相同的可执行文件。这就相当于,Shell帮我们自动补齐了可执行文件的位置信息。我们可以通过which命令,来确定命令名对应的是哪个可执行文件:$which date。别名是给某个命令一个简称,以后在Shell中就可以通过这个简称来调用对应的命令。在Shell中,我们可以用alias来定义别名:$alias freak="free -h"。Shell会记住我们的别名定义。以后我在这个Shell中输入命令freak时,都将等价于输入free -h。在Shell中,我们可以通过type命令来了解命令的类型。如果一个命令是可执行文件,那么type将打印出文件的路径。

总的来说,Shell就是根据空格和其他特殊符号,来让电脑理解并执行用户要求的动作。

猜你喜欢

转载自www.cnblogs.com/zzp-biog/p/9760060.html