程序员人生 网站导航

跟鸟哥学Linux之――shell script

栏目:综合技术时间:2015-06-17 09:08:51

    从程序员的角度来看,Shell本身是1种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令履行,又可以利用 Shell脚本编程,完成更加复杂的操作。在系统管理等领域,Shell编程起着不可忽视的作用。前期我对shell编程做了1个初步的认识,现总结以下;

思惟导图:

 

知识分为了两部份:

基本知识:

    在基本知识中我将其分为了:履行方法、运算式、变量和判断式4部份。1、履行方法就是在Linux中shell文件履行的命令,用的多了自然会没有问题。2、对运算其中讲授了(()),基本语句为变量=$((运算式)),其中关于得到的结果也常常应用于作为语句的判断根据,它会得到1个返回值,即变量$?它的值为0表示语句的履行成功,非0表示语句的履行失败。Declare 用于声明1个变量,后面可以指明变量类型,例如:-i。一样let也能够给变量赋予相应的值,通过运算式得到。3、对变量其中返回值$?前边已提过了,对默许的变量$#,这些默许变量1般用于每行中根据某1标准而构成的各个字段的表示。前期博客中在文件排版中曾提到过。4、判断式有test做测试功能,它可以检测系统文件的相干属性,1个很有用途的命令,后面可以接很多的参数,相干的参数要学会利用―help 或man page来查询和学习。还有就是[ ]的相干用法了,对[ ]用来做1些表达式的判断,对判断式的结果,它一样会得到1个返回值,所以也会作为语句中的1个判断根据来履行1些相干的操作。

 

编写语法:

    看到这里和前期学习C语言和VB语言有很多的相似的地方,但也存在有很多不同的地方,下边在总结中来看他们的用法。

条件判断语句;

    If…then语句:

    if后接1个判断条件,then后接上要履行的语句,一样结构也可拓展为以下:

        if 条件then

            履行语句

        elif条件then

            履行语句

        else

            履行语句

        fi

    case…esac语句:

    功能类似于C中的switch语句。具体的结构以下:

        case$变量名 in

            第1个变量名)

                履行语句

            ;;

            第2个变量名)

                履行语句

            ;;

            *)

                其他情况履行语句

                ;;

           esac

 

函数

    函数功能,这和前期学习中的函数功能相同。但结构上是有差别的,以下:

        Function函数名(){

           函数体

        }

 

循环语句:

    while/untildo done

    其实while dodone语句和until do done语句是相似的都是不定次数的循环,只是给定条件而已,vb中接触过的,结构以下:

        while/until [判断式]

        do

            履行语句

        done

    不同的是while在判断式不成立时终止循环,而until是在条件成立时终止循环。

 

    For…do…done

    这个循环不同与前两个的是循环次数是已知的,结构以下:

        For变量 in 内容1 内容2 …

        Do

            履行语句

        Done

    在循环的进程中顺次将内容n的值赋予变量来履行下边的语句,固然内容的表示也是可以有别的方式的,否则变量多了就难以表示,例如用(seq 1 100)表示1到100。

    另外一种结构方式以下:

        For((初始值;限制值;履行步长))

        Do

            履行语句

        Done

    这就和我们在C和VB语句中接触的for循环结构更加相似了。

  

总述:

    至此时我对shell script1个初步认识的总结,后期还要继续学习shell的编程,文件的编程,串口编程,进程和线程编程的相干知识和应用,和硬件渐渐结合起来做1些相干处理和操作,后边的路还很长,要学的东西也很多,期待着那1份愿景,能够用自己所学的知识去回报社会,为更多的人服务,走向社会上在有需求的地方能够力所能及的贡献自己的那1份气力是1件幸福的事,我相信未来会有1个属于我的地方来造福于他人!!

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐