• shell脚本编程基础知识点


    整数比较:

    -eq:测试两个整数是否相等;相等为真,不等为假
    -ne:测试两个整数是否不等;不等为真,相等为假
    -gt:测试一个数是否大于另一个数;大于为真,否则为假
    -lt:测试一个数是否小于另一个数;小于为真,否则为假
    -ge:大于或等于
    -le:小于或等于
    

    文件测试判断条件

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

    特殊变量

    $?:上一个命令的执行状态返回值
    $#:参数的个数
    $*:参数列表;$*会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数
    $@:参数列表;$@会将各个参数分开,以"$1" "$2"…"n"的形式输出所有参数
    $0:脚本本身名字
    

    字符串测试

    =~:正则表达式判断;[[ "$i" =~ ^[0-9]+$ ]] && echo 1;正则表达式和通配符需要使用在"[[ ]]"中
    ==(=):测试两边字符串是否相等,相等为真,不等为假;==(=)两端要有空格,否则系统会认为是变量赋值
    !=:测试两边字符串是否不等,不等为真,相等为假
    >:测试大于
    <:测试小于
    -n string:测试指定字符串是否为不空,不空则真,空则假     [ -n "$X" ]
    -z string:测试指定字符串是否为空,空则真,不空则假
    

    组合条件测试

    -a:与关系
    -o:或关系
    !:非关系
    非(A 且 B) = (非 A) 或 (非 B)
    非(A 或 B) = (非 A) 且 (非 B)
  • 相关阅读:
    IIS7开启目录浏览功能
    IIS7文件无法下载问题处理
    Dubbo端口占用错误信息
    PlSqlDev中执行INSERT SQL语句包含&符号导致数据异常
    VMWare版本兼容问题处理
    手动释放Linux内存
    ORA-00972_标识符过长
    通过API获取统计信息时报Access denied错误处理记录
    微信小程序中跳转另一个小程序
    css怎样去掉多个Img标签之间的间隙
  • 原文地址:https://www.cnblogs.com/dongzhanyi123/p/12027926.html
Copyright © 2020-2023  润新知