zoukankan      html  css  js  c++  java
  • 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)
  • 相关阅读:
    服务器常用端口
    xml处理类
    水印的代码
    Asp.net常用的51个代码(非常实用)
    poj 2453
    MOD
    LIS(最长上升子序列)
    POJ各题算法分类(转)
    poj 1496&1850
    poj 1423
  • 原文地址:https://www.cnblogs.com/dongzhanyi123/p/12027926.html
Copyright © 2011-2022 走看看