linux中的shell简单入门

    作者:课课家教育更新于: 2016-11-09 17:25:46

      在前面的一个文章中,已经带大家进行shell的一个基础的认识,Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行。shell它也是一种编程,如何有学习shell脚本?这是我们学习Linux系统必须要思考的一个问题。刚入门shell的朋或者不知道该怎么去学起,本文将带大家进行shell脚本的简单入门。

      首先需要了解的是一些变量

      ("")双引号:用于标记多个特殊符号,但是对$,\\,`,!符号例外

      ('')单引号:作用同上,但是可以标记""所不能的特殊符号

      (``)反引号[!前的那个符号,不是单引号]一般用来执行命令

      (\\)反斜杠:转义符号,用于标记单个特殊符号.

      下面是一些简单的shell程序:

    linux中的shell简单入门_shell脚本_Linux系统_系统运维_课课家

      编程中的一些字符:

      空格(space):解析命令行参数

      (*)(?)({and}):产生文件名列表

      (.):代表当前目录

      ($):对变量求值

      (>)(<):重定向标准输入或输出

      (&):执行后台命令

      (|):管道输出

      一般的命令:

      echo显示变量及字符

      read是从用户处接受输入

      <<输入重定向

      来看看一些脚本相关的命令:

      $0Linux命令

      $n命令行参数

      $*由号码1开始的所有的命令行参数

      $@分别访问命令行参数

      $#命令参数的个数

      简单的一些运算:

      exprort是可以将局部变量导出为该shell中的全局变量

      +,-,*,/,>,<,>=,<=,=(用于字符串的比较),==(用于数字的比较),!=,&(与),|(或),!(非).(看到下图中的一个运算)

    逻辑运算

      test比较运算,在比较运算中,正确结果的返回值是0,而不是传统程序上的1

      -gt一个数是否大于另一个数

      -lt小于

      -ge大于等于

      -le小于等于

      -eq等于(用于数值)

      -ne不等于

      -z是否为空字符串

      -n字符串是否大于0

      =字符串是否相等

      !=是否不等

      str是否非空

      -a与

      -o或

      !非

      -f是否为普通文件

      -s文件是否为空

      -r文件是否可读

      -w文件是否可写

      -x文件是否可执行

      -d是否为目录

      -h是否为符号链接

      -c是否与字符设备相关联

      -b是否与块文件相关联

    简单的逻辑运算

      下面是一个小小脚本来试一试

    常用的脚本

      通过本文你会看到shell脚本它的语法并不是特别的复杂,熟悉使用shell脚本是深入学习Linux的基础之一,最重要的是学好基本的框架流程,然后是在日后的shell编写中更加好理解。

课课家教育

未登录