zoukankan      html  css  js  c++  java
  • 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搭建人与计算机之间的桥梁。

     

  • 相关阅读:
    [2016北京集训试题15]项链-[FFT]
    [agc008E]Next or Nextnext-[dp+思考题]
    [agc011E]Increasing Numbers-[思考题]
    [2016北京集训试题14]股神小D-[LCT]
    [2016北京集训试题6]mushroom-[bitset]
    [2016北京集训试题6]魔法游戏-[博弈论-sg函数]
    [arc081F]Flip and Rectangles-[黑白染色]
    [arc072F]Dam-[单调队列]
    【CF787D】遗产(Legacy)-线段树-优化Dijkstra(内含数据生成器)
    【CF373C】计算袋鼠是愉快的(Counting Kangaroos is Fun)-贪心
  • 原文地址:https://www.cnblogs.com/ucas123/p/14253757.html
Copyright © 2011-2022 走看看