Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4236174
  • 博文数量: 1148
  • 博客积分: 25453
  • 博客等级: 上将
  • 技术积分: 11949
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-06 21:14
文章分类

全部博文(1148)

文章存档

2012年(15)

2011年(1078)

2010年(58)

分类: Python/Ruby

2011-01-18 10:10:00

为什么要 exit 0 退出呢??
      因为:一个shell脚本能够对任何从命令行上调用的命令的退出码进行测试。

test  或 [ 命令
    大多数脚本程序都会使用shell的bool值判断命令。
    当在使用 [ 命令时,还可以用 符号 ] 来结尾。

note:
    如果程序不能正常工作,很可能是因为它与shell中的test 命令发生了冲突

简单使用:
      检查一个文件是否存在    test -f
     
  1. if test -f fred.c 注意:在-f 前后都有空格符
  2. then
  3. ....
  4. fi

  5. 或者

  6. if [ -f fred.c ] 注意:在[] 内两边都有空格符
  7. then
  8. ...
  9. fi
条件类型:            字符串比较           算术比较             文件有关的条件测试

字符串比较
  1. string  =string2                 如果两个字符相同则结果为真
  2. string !=string2                 不同为真
  3. -n string                          字符串不为空为真
  4. -z string                          如果字符串为null(一个空串),则结果为真
算术比较
  1. A -eq B         相等为 真
  2. A -ne B          不同 为 真
  3. A -gt B          大于
  4. A -ge B          大于等于
  5. A -lt B            小于
  6. A -le B         小于等于
  7. !A            如果表达式为假,为真,反之

文件条件测试
  1. -d file   文件是一个目录
  2. -e file   文件存在 注意:-e 不可移植,-f 可以移植
  3. -f file   文件是一个普通文件
  4. -g file   如果文件的set-group-id位被设置
  5. -r file   文件可读
  6. -s file   文件的大小不为 0
  7. -u file   文件的set-user-id位被设置
  8. -w file   文件可写
  9. -x file   文件可执行

测试/bin/bash 文件状态的例子

  1. #!/bin/sh
  2. if [ -f /bin/bash ] #检查文件存在
  3. then
  4.     echo "file /bin/bash exits"
  5. fi

  6. if [ -d /bin/bash ] #检查是否是 目录文件
  7. then
  8.     echo "/bin/bash is a directory"
  9. else
  10.     echo "/bin/bash is not a directory"
  11. fi





阅读(1011) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~