| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1353 人关注过本帖
标题:Unix/Linux的shell程序设计的语法--<条件测试>
只看楼主 加入收藏
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
结帖率:100%
收藏
 问题点数:0 回复次数:0 
Unix/Linux的shell程序设计的语法--<条件测试>
*/ --------------------------------------------------------------------------------------
*/ 出自: 快乐编程 https://hi.bccn.net/108519
*/ 作者: neverTheSame E-mail:zhaoxufeng9997@ QQ:475818502
*/ 时间: 2008-6-1
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------
  
条件测试是程序设计中不可缺少的一部分.以下就是shell程序设计中常见的条件测试方法.
 
“test”或”[ ]”命令:使用这二个命令用来测试条件是真还是假.使用方法:
   if test –f file.c      if [ -f file.c ]
     then …                  then …
   fi                       fi
  当条件满足(即为真)时,则执行then后面的语句.
   
  注意在使用方括号”[]”来测试条件时,方括号要与测试条 件之间留出空格.
 
 测试条件分类:字符串比较类\算术比较类\与文件相关的条件测试类
 字符串比较类:
   
string1 = string2
 如果两字符串相同,则结果为真
 
string1 != string2
 如果两字符串不相同,则结果为真
 
-n string
 如果字符串不是空,则结果为真
 
-z string
 如果字符串是空,则结果为真
 

注意在比较相等或不等的时侯,=/!=的两边要与比较的两字符串要有空格符相隔开.

 
  算术比较类:
expression1 –eq expression2
 如果两个表达式相等,则结果为真
 
expression1 –ne expression2
 如果两个表达式不等,则结果为真
 
expression1 –gt expression2
 如果前一个表达式大于后一个表达工,则结果为真
 
expression1 –ge expression2
 如果前一个表达式大于或等于后一个表达工,则结果为真
 
expression1 –lt expression2
 如果前一个表达式小于后一个表达工,则结果为真
 
expression1 –le expression2
 如果前一个表达式小于或等于后一个表达工,则结果为真
 
! expression
 取表达式的非,即表达式为假,则结果为真
 

与文件有关的文件测试类:
  文件条件测试 结果
-d file 如果文件是一个子目录,则结果为真
-e file 如果文件存在,则结果为真
-f file 如果文件是一个普通文件,则结果为真
-g file 如果文件的set-group-id被设置,则结果为真
-r file 如果文件可读,则结果为真
-s file 如果文件的长度不为0,则结果为真
-u file 如果文件的set-user-id被设置,则结果为真
-w file 如果文件可写,则结果为真
-x file 如果文件可执行,则结果为真
搜索更多相关主题的帖子: Linux 程序设计 shell Unix 语法 
2008-06-25 01:08
快速回复:Unix/Linux的shell程序设计的语法--<条件测试>
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014013 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved