• 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

  • 相关阅读:
    NC portal怎么重新开始入门,整个配置过程包括配置一个节点
    NChome如何创建单据跟主子表还有扩展开发要怎么弄?
    还是有必要确定一下自己到底在做是什么
    os.path模块
    re模块
    Django settings配置文件
    自定义分页器
    AJAX
    AJAX 一些常用方法
    AJAX 简单上手
  • 原文地址:https://www.cnblogs.com/wangshaojun/p/5093924.html
Copyright © 2020-2023  润新知