XBOX

  PHP博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  13 随笔 :: 87 文章 :: 0 评论 :: 0 Trackbacks
  • test
  • expr

    一、TEST

    1。关于某个档名的“类型”的侦测(存在与否)
       
    -e            该档名是否存在?
    -f             该档名是否为档案(file)?
    -d            该文件名是否为目录(directory)?
    -b            该文件名是否为一个block device装置?
    -c            该文件名是否为一个character device装置?
    -S            该档名是否为一个Socket档案?
    -p            该档名是否为一个FIFO(pipe)档案?
    -L            该档名是否为一个连结档?


    2。关于档案权限的侦测:

    -r            该文件名是否具有“可读”属性?
    -w         该文件名是否具有“可写”的属性?
    -x            该文件名是否具有“可执行”的属性?
    -u            该文件名是否具有“SUID”的属性?
    -g            该文件名是否具有“SGID”的属性?
    -k            该文件名是具有“Sticky bit"的属性?
    -s            该档名是否为“非空白档案”?


    3。 两个档案之间的比较:

    -nt            (newer than)判断file1是否比file2新
    -ot            (older than)判断file1 是否比file2旧
    -ef             判断 file1 与file2是否为同一档案,可用在判断hard link 的判定上。主要意义在判定两个档案                 是否均指向同一个inode


    4。关于两个整数之间的判定:

    -eq            两数值相等(equal)
    -ne            两数值不相等(not equal)
    -gt            n1 大于n2( greater than)
    -lt             n1 小于 n2 (less than)
    -ge         n1 大于等于n2 (greater than or equal)
    -le            n1 小于等于 n2 (less than or equal)


    5。判定字符串的数据:

    test -z string            判定字符串是否为0?若string为空字符串,则为true
    test -n string            判定字符串是否为非0?若string 为空字符串,则为false     注:-n亦可省略
    test str1 = str2            判定str1是否等于str2,若相等,则回传 true
    test str1 != str2         判定str1是否不等于str2,若相等则回传false


    6。多重条件判定:

    -a            (and)两状况同时成立。例如:test -r file -a -x file,则file 同时具有 r 与 x 权限时才回传 true.
    -o            (or)两状况任何一个成立。例如: test -r file -o -x file,则file 具有 r 或 x 权限时就可回传true
    !                 反相状态,如test ! -x file ,则file 不具有x时,回传true
  • posted on 2008-08-31 19:57 XBOX 阅读(128) 评论(0)  编辑 收藏 引用 网摘 所属分类: Linux

    只有注册用户登录后才能发表评论。
    网站导航: