shell编程二条件判断

1.条件判断的表达式:

    [  表达式  ] 或者 [[  表达式  ]] 或者 test 表达式,要注意的是[  ]或者[[  ]]中括号内要与表达式之间用空格隔开,否则会报错。

2.if else fi 条件语句

    格式:
        if 条件 ;then
                    如果条件为真则执行这里的语句
        else
                                    条件为假则执行这里语句(else可以省略)
        fi

3.命令之间的逻辑关系

    逻辑与:符号 && 只有两个条件同时为真时,结果为真,如果第一个为真,就继续判断第二个条件,如果第一个条件为假,就结束判断,因为结果已经确定为假
    逻辑或:符号 || 只要有一个为真,结果为真,如果判断第一个条件为真时,就不需要判断后面的条件了,因为结果已经出来了,为真,否则就继续判断

4.整数之间的条件判断

    -eq :用来判断两个整数之间是否相等,如果相等返回的状态为0(真)
    -ne :用来判断两个整数之间是否不等,如果不等返回的状态为真,否则为假
    -gt :用来判断前一个数是否大于后一个数,如果大于返回真,否则为假,如:7 -gt 5 返回为真
    -lt :用来判断前一个数是否小于后一个数,如果小于返回真,否则为假,如:5 -lt 7 返回为真
    -ge :用来判断前一个数是否大于等于后一个数,如果大于等于返回真,否则为假,如:7 -gt 5或者7 -gt 7 返回为真
    -le :用来判断前一个数是否小于等于后一个数,如果小于等于返回真,否则为假,如:5 -le 7或者5 -le 5 返回为真

5.练习

    判断一个用户,如果用户存在,则打印一条语句“user is exits。”,否则创建此用户,并答应一条语句“useradd success。”:
    #!/bin/bash
    username="zzyyoo"
    (id $username &> /dev/null && echo "user is exist.") || (useradd $username &>/dev/null && echo "useradd success.")
 ###/dev/null是一个类似黑洞的设备,把数据重定向到这里,都会被回收。

 给定一个用户,如果uid为0,则打印“root user。”,否则打印“common user。”:
 #!/bin/bash
#user=‘wwzzyy‘
user=‘root‘
if [ `id -u $user` -eq 0  ];then
        echo "root user."
else
        echo "common user."
fi

6.变量命名规则

    由数字,字母和下划线组成
    不能以数字开头,如3ab
    变量名最好不要和系统中已有的环境变量重名,避免覆盖

原文地址:http://blog.51cto.com/13803030/2136042

时间: 2024-10-25 04:16:33

shell编程二条件判断的相关文章

Shell编程(二)-if判断及特殊用法,文件目录属性判断,case判断

[toc] Shell编程(二) 一.shell脚本中的逻辑判断 1.1 判断语句if 1.1.1 格式1: if 判断语句:then command fi 示例1 # vim if01.sh //判断数值大小第一种方法用[],注意前后空格 #!/bin/bash a=5 if [ $a -gt 3 ] then echo ok fi [[email protected] ~]# sh if01.sh ok [ ] -gt:大于, [ ] -lt:小于, [ ] -ge:大于或等于, [ ] -

Shell编程之条件判断与流程控制

一.条件判断式语句 1-1.概述 用来判断是与否,客观的而非主观判断,用于进行基本的管理 1-2.按文件类型判断 补充: && 命令1&&命令2 逻辑与(没有数据传递) 当命令1正确执行,则命令2才会执行 当命令1执行不正确,则命令2不会执行 || 命令1||命令2 逻辑或(没有数据传递) 当命令1执行不正确时,命令2才会执行 当命令1正确执行时,命令2不会执行 按文件类型判断 记住蓝色部分 两种判断格式: test –e /root/install.log [-e /ro

shell 编程if条件判断与if 真假判断

if条件判断与if真假判断 目录: 1.正确写法 2.错误写法 3.总结 一.正确写法 在编写shell脚本时,为简化代码的行号及结构的简约型,通常将命令执行结果和判断通过一条语句进行编写(在C语言编写程序时,经常遇到此种写法),如: [[email protected] ~]#touch test.sh if  useradd root &>/dev/null ; then    #如果用户添加成功,则不显示,否则显示用户添加失败     echo "user1 created

linux基础之shell编程(2)-条件判断,算数运算,测试

bash中如果实现条件判断? 条件测试类型 整数测试 字符测试 文件测试 条件测试的表达式 有三种 [ expression ] --方括号与表达式之间一定要有一个空格 [[ expression ]] test expression 整数测试 -eq: 测试两个整数是否相等 例:$A -eq $B -ne: 测试两个整数是否不等 不等为真,相等为假 -gt: 测试一个数是否大于另一个数:大于,为真:否则,为假: -lt: 测试一个数是否小于另一个数:小于,为真:否则,为假: -ge: 大于或等

shell编程的条件判断

条件判断: 当条件判断的结果为真时$?的值为0, 如果判断的结果为假的则$?的值为非0 test即为判断命令!: ]:~$ test a.txt -nt b.txt  判断a.txt是否比b.txt文件新,这种为命令行格式. 但是在编程中常用的格式为: ]:~$ [ a.txt -nt b.txt ] 判断的条件与上面是一致的,所以test命令可以基本不用 文件类型判断 -e 判断文件是否存在 -d判断是否为目录文件 -f判断是否为普通文件 -L判断是否是连接文件 -s判断文件内是否有数据 数值

linux shell编程 之 条件判断

条件判断:

shell脚本编程:条件判断if语句使用小结

shell脚本编程,有三种控制结构分别是:顺序结构,条件判断结构,循环结构.本文将总结shell脚本中条件判断结构的使用方法. 条件判断结构分为三种,单分支,双分支,多分支,等结构. 单分支结构的语法如下: if [ expression  ] ;then statement1 statement2 ......... fi 双分支语法结构: if [ expression ];then statement1 statement2 ..... else statement3 statement4

bash脚本编程之条件判断、条件测试

脚本编程: 编程面向过程有如下几种执行方式 顺序执行 选择执行:  如 if, case 循环执行:  如 for, while, until bash的变量类型: 本地变量 set VAR_NAME=value 设置变量赋值 如: set User=Centos unset VAR_NAME 撤消变量赋值 如: unset User=Centos ${VAR_NAME} 作用范围:当前shell进程: 局部变量 local VAR_NAME=value 设置变量赋值 unset VAR_NAM

Shell编程 之 条件表达式

1 #!/bin/bash -   2 #===============================================================================  3 #  4 #          FILE: condition_expression_test.sh  5 #   6 #         USAGE: ./condition_expression_test.sh   7 #   8 #   DESCRIPTION:   9 #  10 #