linux下shell编程

来源:互联网 发布:php exec python 编辑:程序博客网 时间:2024/05/01 17:36

 shell脚本语言为一种解释型语言,同windows下的.bat批处理文件。

    (1)shell命令的第一行

        #!/bin/sh

    "#!/bin/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。

    (2)$用于取变量的值

        echo  $cout

               上式为输出cout的值

    (3)位置变量

        $0    与键入的命令行一样

        $1,$2,$3,.......,$9  分别包含第一个到第九个命令行参数

        $#  包含命令行参数的个数

        $@ 包含所有命令行参数

        $?  包含前一个命令的退出状态

        $*  包含所有命令行参数

        $$  包含正在执行进程的ID号

    (4)shell中的乘法

        /*  

        sum=`expr    $num/*6`

    (5)shell的判断

        test语句可测试三种对象

        字符串    整数   文件属性

        (文件属性)

      -d   name   测试name是否为一个目录

      -f   name   测试name是否为一个普通文件

        (字符串)

      s1=s2   测试两个字符串的内容是否完全一样

            s1!=s2   测试两个字符串的内容是否有差异

         -z  s1   测试字符串长度是否为0

      -n  s1   测试字符串的长度是否不为0

        (整数)

      a  -eq    b

      a   -ne   b

         a   -gt   b

      a   -ge  b

      a    -lt   b

         a    -le   b

      g----------big        n--------------no       l---------------little       t----------------than

        e为等于

    (6) 条件语句

        if   表达式

            then    命令行

        fi

        

        if   表达式

            then   命令行

            else    命令行

        fi

       实例:

        if   [   -f   $1   ]

            then 

                echo    "file   $1  exists"

        fi

       

    (7)case.........ecase多路分支语句

        case    字符串变量   in

           模式1)

            命令行

            ;;

         模式2)

            命令行

            ;;

          ..............

         *)

            命令行

            ;;

        ecase

 

    (8)循环语句(省略in,取形参列表)

        for   变量名  in  单词表

            do

                命令行

            done

 

        while   命令或表达式

        do

            命令行

        done

    (9)break   continue

        break   n   跳出n层

        continue  n    转到最近n层循环语句的下一轮循环

    (10)shell函数

        function_name()

        {

                command  1

                ..........

                command  n

        }   

原创粉丝点击