美文网首页
Shell 基础语法

Shell 基础语法

作者: 一杉风雨 | 来源:发表于2018-10-04 15:57 被阅读0次

    判断

    if [ expression ]; then
        # do something
    else
        # do something
    fi
    

    分支

    case ${var} in
        condition1)
        # do something
        ;;
        condition2)
        # do something
        ;;
        *)
        # default do something
        ;;
    esac
    

    循环

    # 循环列表1
    for var in [list]
    do
        # use ${var} do something
    done
    
    # 循环列表2
    for var in {1..100}
    do
        # use ${var} do something
    done
    
    # 循环读文件
    cat $file |while read line
    do
        # do something
    done
    
    while [ condition ]
    do
        # do something
    done
    
    # 循环控制
    break;         # 跳出
    continue;      # 继续
    

    判断标识

    -a         # 逻辑与
    -o         # 逻辑或Or
    
    -eq        # 等于
    -ne        # 不等于
    -lt        # 小于
    -gt        # 大于
    -le        # 小于等于
    -ge        # 大于等于
    
    if [ x"${value}" == x ];then ...   # 字符串判空   
    
    -e         # 文件是否存在
    -d         # 文件是否为目录
    -s         # 文件大小是否为零
    -f         # 文件是否为普通文件
    -r         # 文件是否对当前用户可读
    -w         # 文件是否对当前用户可写
    -x         # 文件是否对当前用户可执行
    !-x        # 文件是否对当前用户不可执行
    file1 nt file2    # 文件1比文件2新
    file1 ot file2    # 文件1比文件2旧
    

    函数传参

    $0        # 函数或命令的名字
    $n        # 命令的第n个参数
    $*        # 所有参数,代表["$1$2$3$4……"]
    $@        # 所有参数,代表["$1" "$2" "$3" ……]
    $#        # 参数个数
    $$        # 命令的PID
    $!        # 上一个指令的PID(后台运行的最后一个进程的进程ID号)
    $?       # 上一个指令的返回值 (0表示没有错误)
    $- 显示shell使用的当前选项,与set命令功能相同
    

    引用其他脚本

    source filename.sh
    . filename.sh
    

    相关文章

      网友评论

          本文标题:Shell 基础语法

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