zoukankan      html  css  js  c++  java
  • Shell编程进阶 1.6 if判断的几种用法

    针对文件和目录的逻辑判断

    touch 1.txt
    if [ -f 1.txt ]; then echo ok;fi

    -f 判断1.txt是否是文件且是否存在,成立输出ok

    if [-d /tmp/ ]; then echo ok;fi

    -d 判断tmp是否是目录且存在,成立输出ok

    -r,w,x 是否可读写执行

    vim if2.sh
    #!/bin/bash
    read -p "Please input a number:" n
    m=`echo $n|sed 's/[0-9]//g'`
    if [ -n "$m" ]
    then
            echo "The character you input is not a number,please retry."
    else
            echo $n
    fi

    read -p 给出提示符,赋值给n

    变量m=$n然后$n的0-9用空格代替。

    如果$m不是空格

    输出 The character you input is not a number,please retry.

    否则输出 $n

    -z和-n相反

    if grep -q '^wangshaojun:' /etc/passwd; then echo "wangshaojun exist"; fi

    grep -q 不输出结果,只做判断条件。匹配到即成立。

    多个判断条件

     if [ -d /tmp/ ] && [ -f 1.txt ] ; then echo ok;fi
    if [ -d /tmp/ ] && [ -f 1.txt ] && [ -d /usr/ ] ; then echo ok;fi
    if [ -d /tmp/ -a -f 1.txt ] ; then echo ok;fi

    -a and

    同时成立即输出ok

    if [ -d /tmp/ ] || [ -f 1.txt ] ; then echo ok;fi
    if [ -d /tmp/ -o -f 1.txt ] ; then echo ok;fi

    -o  or

    一个成立即ok

  • 相关阅读:
    奇异值分解SVD
    Google Draco点云压缩
    C++计时函数
    NDT正态分布变换配准
    点云配准 Registration
    图像的距
    镜头基础
    道格拉斯-普克算法
    霍夫变换
    opencv基础
  • 原文地址:https://www.cnblogs.com/wangshaojun/p/5093924.html
Copyright © 2011-2022 走看看