zoukankan      html  css  js  c++  java
  • shell编程技术之-基础知识

    一.脚本结构

    linux下shell的脚本,是将一系列命令序列写在一个文本文件,而这个文本文件时可执行的。相对命令行来说,开发效率提高。因此他的构架有2部分构成#!和命令序列。其中#!指明此脚本是用哪个解析器来解析。 例如:

    二.基础知识

    2.1 变量

    shell本允许用户设置和使用自己的变量,变量可以是数字或者字符串,用户无需指定其类型,也无需在使用前定义。

    例如:

    1 #!/bin/bash
    2 
    3 #2.2
    4 a="hello word"
    5 b=5
    6 echo "A is" $a
    7 echo "B is" $b

    2.2 参数

    同C程序一样,shell本中也可以使用命令行参数

     $#:传入脚本的命令行参数个数
     $*:所有命令行参数值,在各个参数值之间留有空格
     $0:命令本身(shell文件名)
     $0:命令本身(shell文件名)
     $1:第一个命令行参数
     $2:第二个命令行参数

    例如:

    #!/bin/bash
    
    #2.3
    echo "number of var:" $#
    echo "value of vars" $*
    echo "name of script" $0
    echo "value of var1" $1
    echo "value of var2" $2

    终端: ./bash.sh a 3, 结果可以此验证

    2.3  数学计算

    shell本提供了一个专门的命令expr来计算数学表达式,例如expr 5 +1,但是当要把计算的结果赋值给其他变量的时候,还必须使用反号。var=`expr 20 / 10`。 例如:

    #!/bin/bash
    
    #2.4
    var1=10
    var2=20
    var3=`expr $var2 / $var1`
    var4=`expr $var2 + $var1`
    echo $var3
    echo $var4

    2.5 流程控制语句

    2.5.1 

    shell脚本中最基本的流程控制语句就是if-then,使用格式:

    if [ condition ] (特别提醒:方括号左右两边必须有空格)

    then
    commands
    else
    commands
    fi

    例如:

    #!/bin/bash
    
    #2.5.1
    var=10
    if [ $var -gt 5 ]
    then 
        echo "the value is greater than 5"
    fi

    2.5.2 

    shell本提供了for命令,用于创建类似于c语言编程中for

    语句一样的循环。使用格式:

    for var in list

    do

    commands
    done

    例如:

    #!/bin/bash
    
    #2.5.2
    list="Sun Mon Tue Wed Thur Fri Sat"
    for day in $list
    do 
        echo $day
    done

    2.5.3

    shell本提供了while命令,用于创建类似于c语言编程中
    while语句一样的循环。使用格式:
    while condition
    do

    commands
    done

    例如:

    #!/bin/bash
    
    while [ $var -gt 0 ]
    do 
        echo $var 
        var=`expr $var - 1`
    done
  • 相关阅读:
    CodeForces
    CodeForces
    FZU
    FZU
    UESTC
    测试用例概述
    软件测试流程
    软件测试(二)软件测试过程
    软件测试(一)软件的生命周期(SDLC,Systems Development Life Cycle,SDLC)
    系统测试的策略
  • 原文地址:https://www.cnblogs.com/yfz0/p/4637808.html
Copyright © 2011-2022 走看看