文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>条件测试

条件测试

时间:2006-04-13  来源:xiaophedap

<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8"><title></title><meta name="GENERATOR" content="OpenOffice.org 1.1.2 (Linux)"><meta name="AUTHOR" content="Crystal Chen"><meta name="CREATED" content="20060413;103600"><meta name="CHANGEDBY" content="Crystal Chen"><meta name="CHANGED" content="20060413;1210100"> <style> </style>

  一般,在条件测试中,对文件、字符串和数字用test命令,对数字和字符串用expr命令。expr命令测试和执行数值输出。用最后退出状态命令——$?——可以知道test和expr的执行结果,0表示正常结束,1表示返回错误。


  1、测试文件状态

  test一般有两种格式:

    test condition

    或者是

    [ condition ]

    说明:使用方括号来测试时,注意在测试的条件两边加上空格。

  测试文件状态的条件表达式很多,最常见的如下:

文件状态测试

-d

目录

-s

文件长度大于0、非空

-f

正规文件

-w

可写

-l

符号链接

-u

文件有suid位设置

-r

可读

-x

可执行

  例如测试/home/crystal_shell/bin/findfile文件是否有可写权限,可以用以下两个方法:

    (1)$ [ -w findfile ]

    (2)$ test -w findfile

  然后可以用$ echo $?来检查到底是否有写权限,如果为0则表示有写权限,如果为1则表示没有。当然,如果对此怀疑,可以用$ ls -l来查看相应的权限是否和测试的一致。


  2、测试时使用逻辑操作符

  有时候需要比较两个文件的状态,shell提供了三种逻辑操作符来完成此功能:

    -a 逻辑与,操作符两边均为真,结果为真,否则为假

    -o 逻辑或,操作符两边只要一边为真,结果即为真,否则为假

    ! 逻辑否,条件为假,结果为真;条件为真,结果为假


  3、字符串测试

  字符串测试一般有5种格式:

    (1)test “string”

    (2)test string_operator “string”

    (3)test “string” string_operator “string”

    (4)[ string_operator string ]

    (5)[ string string_operator string ]

  在这里,string_operator可以为以下几种:

    = 两个字符串相等

    != 两个字符串不相等

    -z 空字符串

    -n 非空字符串


  4、测试数值

  测试数值一般可以使用许多操作符,一般格式如下:

    “number” numeric_operator “number”

    或者是

    [ “number” numeric_operator “number” ]

  其中numeric_operator可以为:

    -eq 数值相等(=)

    -ne 数值不相等(!=)

    -gt 第一个数大于第二个数(>)

    -lt 第一个数小于第二个数(<)

    -le 第一个数小于等于第二个数(<=)

    -ge 第一个数大于等于第二个数(>=)


  5、expr的用法

  expr命令一般用于整数值,但也可以用于字符串。一般格式为:

    expr argument operator argument

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载