Linux运维初级二(总结)

shell编程

        bash变量类型:

            环境变量
            本地变量(局部变量)
            位置变量
            特殊变量

            
        本地变量:

                set VARNAME=VALUE: 作用域为整个bash进程;

        局部变量:
                local VARNAME=VALUE:作用域为当前代码段;

        环境变量:作用域为当前shell进程及其子进程;
                export VARNAME=VALUE
                VARNAME=VALUE
                export VARNAME
            “导出”

        位置变量:
                $1, $2, ...

        特殊变量:
                $?: 上一个命令的执行状态返回值;

        程序执行,可能有两类返回值:
            程序执行结果
            程序状态返回代码(0-255)
                0: 正确执行
                1-255:错误执行,1,2,127系统预留;
                
        输出重定向:
                >
                >>
               2>
                2>>
                &>

        撤消变量:
                unset VARNAME

        查看当前shell中变量:
                set

        查看当前shell中的环境变量:
                printenv
                env
                export

        脚本:命令的堆砌,按实际需要,结合命令流程控制机制实现的源程序

                shebang: 魔数
                #!/bin/bash
                # 注释行,不执行

        /dev/null: 软件设备, bit bucket,数据黑洞    

            
        脚本在执行时会启动一个子shell进程;
            命令行中启动的脚本会继承当前shell环境变量;
            系统自动执行的脚本(非命令行启动)就需要自我定义需要各环境变量;
            

    条件测试类型:

            整数测试
            字符测试
            文件测试

        条件测试的表达式:
            [ expression ]
            [[ expression ]]
            test expression
            
        整数比较:
            -eq: 测试两个整数是否相等;比如 $A -eq $B
            -ne: 测试两个整数是否不等;不等,为真;相等,为假;
            -gt: 测试一个数是否大于另一个数;大于,为真;否则,为假;
            -lt: 测试一个数是否小于另一个数;小于,为真;否则,为假;
            -ge: 大于或等于
            -le:小于或等于
            
        命令的间逻辑关系:
            逻辑与: &&
                第一个条件为假时,第二条件不用再判断,最终结果已经有;
                第一个条件为真时,第二条件必须得判断;
            逻辑或: ||

        shell中如何进行算术运算:

   A=3
              B=6
        1、let 算术运算表达式
            let C=$A+$B
        2、$[算术运算表达式]
            C=$[$A+$B]
        3、$((算术运算表达式))
            C=$(($A+$B))
        4、expr 算术运算表达式,表达式中各操作数及运算符之间要有空格,而且要使用命令引用
            C=`expr $A + $B`

文件测试:    

        -e FILE:测试文件是否存在
        -f FILE: 测试文件是否为普通文件
        -d FILE: 测试指定路径是否为目录
        -r FILE: 测试当前用户对指定文件是否有读取权限;
        -w
        -x    

        定义脚本退出状态码

            exit: 退出脚本
            exit #
            如果脚本没有明确定义退出状态码,那么,最后执行的一条命令的退出码即为脚本的退出状态码;
 

猜你喜欢

转载自blog.csdn.net/weixin_41888013/article/details/82834883