10-11

作者: 当时光一去不复返时 | 来源:发表于2016-11-12 16:03 被阅读0次

    printf

    printf "value=%s\n" "${value}"

    read

    printf“0”
    read value
    printf“这个值=%s\n” "${value}"
    1)用法:从键盘读入一个值,赋给read后面的变量
    2)read尽量不要使用同时输入多个值,
    比如:read value1 value2
    %m.nf:右对齐m.nf:左对齐

    expr

    a=1
    b=2
    c=expr $a \* $b
    echo "${c}"
    进行基本运算
    运算符
    1)算数运算符 + - * / % ++ -- += -= /=
    注意点:的数据
    运算符左右两边都有空格
    取结果集 注意乘法 *必须要通过\转义,不然会出错 $()也是和一样的取结果集,不但可以取整数,还可以取shall命令的结果集,比如
    a=$(ls)
    echo "${a}"

    let 关键字

    a=1
    b=2
    let c=a*b
    echo "${c}"
    整数之间的关系运算符 echo 用之前加个
    < > ==或者= !=

    if语句语法格式


    if【 a -ge b 】
    then
    语句体
    fi


    -gt > -ge >= -lt < -le <= -eq == -ne !=
    g: greater t:then e: equal l:less n:not


    if【 a -ge b 】
    then
    语句体
    elif [ a -gt b ]
    then
    语句体
    fi


    else 可以没有 如果有else 必须放在最后面
    else 下面没有then
    字符串运算符
    =:判断字符串是否相等
    !=:判断字符串是否不相等
    -z(zero:判断字符串是否为空、不存在或者字符串为空格
    文件运算符

    -d 表示判断是否是目录文件
    -f 表示判断是否是普通文件
    -r 表示判断是否可读
    -w
    -x
    -e:exist,判断文件是否存在

    案例:

    file="1.sh"
    if [ -d $file ]
    then
    echo "目录文件"
    else
    echo "不是目录文件"
    fi

    case
    case 变量 in
    值1)
    语句体1
    ;;
    值2)
    语句体2
    ;;

    语句3
    ;;
    esac
    注意点:
    1 结束标志 esac,
    2 如果前面的值都不符合,这时会来到

    3 )可以不写,但是写的话只能放到最后
    4 每一个分支结束之后都有;;
    数组
    1)数组初始化一个一个变量进行初始化,可以间隔赋值,还可以不从0位置开始
    比如array【1】=17
    array【5】=1
    2)数组整体赋值
    array=(1 2 3 4 hello)
    数组元素访问
    ${数组名【下标】}
    遍历数组里面所有的元素
    ${数组名【
    】}
    ${数组名【@】}

    while [ ]
    do
    语句体
    done
    参数
    ./xx.sh
    $0:代表执行的文件 ./xx.sh
    $1:代表执行的第一个参数
    $2:代表执行的第二个参数
    $n:代表执行的第n个参数
    $#:代表执行的参数个数,不包含命令本身
    sh 1.sh
    1.判断文件是否存在
    2.如果存在,判断文件是否是普通文件
    3.如果是普通文件,修改权限
    4.执行
    5.让命令在全局有效

    相关文章

      网友评论

          本文标题:10-11

          本文链接:https://www.haomeiwen.com/subject/ppnvyttx.html