Shell脚本语言

机器语言 01010                                                    位于最底层,速度快,复杂,开发效率低

汇编语言  mov                           比较接近底层,速度快,较复杂,开发效率低

高级语言   编译型----翻译----计算机                     跨平台性差,执行速度快  C C++ C# Go等语言

     解释性---解释器----翻译----计算机      跨平台性强,执行速度慢,依赖解释器执行  如Shell  Python  Java   PHP  Ruby 等语言

Shell的定义

1、shell的含义

  首先shell的英文意思是"壳";相对于内核来说,因为其建立在内核的基础上,面向于用户的一种表现形式,比如我们看到一个球,见到它的壳而不是它的核。

Linux中的Shell,是指一个面向用户的命令接口,表现形式就是一个可以由用户输入的界面,这个界面也可以反馈运行信息;

 

2、Shell脚本的书写
  在写Shell脚本时,往往第一行要注明用什么解释器来解释这个脚本。
  如#!/bin/bash即用/bin/bash这个解释器来解释接下来的语句。
  还有如#!/bin/csh
  Shell脚本的一般后缀是.sh

3、Shell的类型(以下列出相对流行的shell,但不是全部)

  • sh(全称Bourne Shell),是UNIX最初使用的shell,而且在每种UNIX上都可以使用。

    • Bourne Shell在shell编程方便相当优秀,但在处理与用户的交互方便作得不如其他几种shell。
  • bash(全称Bourne Again Shell),LinuxOS默认的,它是Bourne Shell的扩展。

    • 与Bourne Shell完全兼容,并且在Bourne Shell的基础上增加了很多特性。可以提供命令补全,命令编辑和命令历史等功能。它还包含了很多C Shell和Korn Shell中的优点,有灵活和强大的编辑接口,同时又很友好的用户界面。
  • csh(全称C Shell),是一种比Bourne Shell更适合的变种Shell,它的语法与C语言很相似。

  • Tcsh是Linux提供的C Shell的一个扩展版本。

    • Tcsh包括命令行编辑,可编程单词补全,拼写校正,历史命令替换,作业控制和类似C语言的语法,他不仅和Bash Shell提示符兼容,而且还提供比Bash Shell更多的提示符参数。
  • ksh(全称Korn Shell),集合了C Shell和Bourne Shell的优点并且和Bourne Shell完全兼容。

  • pdksh,是Linux系统提供的ksh的扩展。

    • pdksh支持人物控制,可以在命令行上挂起,后台执行,唤醒或终止程序。

4、shell在Linux中的存在形式

由于Linux不同于windows,Linux 是内核与界面分离的,它可以脱离图形界面而单独运行terminal,同样也可以在内核的基础上运行图形化的桌面。因此,在Linux系统中,就出现了两种Shell表现形式,一种就是在无图形界面下的终端运行环境下的shell,另一种就是桌面上运行的类似windows的MS-DOS运行窗口,前者一般称为终端,后者一般称为Shell;

 

5、Shell如何执行用户的命令

  1.shell两种执行指令的方式,

    第一种是用户事先编写好的sh脚本文件,内含Shell脚本,然后使用Shell程序执行该脚本,这种方式我们称为Shell编程;

    第二种形式,则是用户直接在Shell界面上执行Shell命令,由于Shell界面的关系,大家都习惯一行一行的书写,

 

总结:shell搭建人与计算机之间的桥梁。

 

原文地址:https://www.cnblogs.com/ucas123/p/14253757.html