Linux Shell编程(三)--条件测试

转载 2012年03月27日 21:40:13

Shell的测试命令的语法格式为:
test 表达式
或者
[ 表达式 ] (“[”后以及“]”之前要有空格)

例:test 1 -gt 2测试1是否大于2。test通常与if、while、until等语句一起使用。


表达式有以下类型:

测试文件属性

-b file:如果文件 存在且为块设备(Block special),则值为真;

-c file:如果文件存在且为字符设备(Character special),则值为真;

-r file:如果文件存在且为只读,则值为真;

-w file:如果文件存在且可写入,则值为真;

-x file:如果文件存在且可执行,则值为真;

-s file:如果文件存在且长度大于零,则值为真;

-d file:如果文件是一个目录,则值为真;

-f file:如果文件是一个普通文件,则值为真;

-e file:如果文件存在,则值为真。


测试数值

n1 -eq n2:n1等于n2,则值为真;

n1 -ne n2:n1不等于n2,则值为真;

n1 -gt n2:n1大于n2,则值为真;

n1 -lt n2:n1小于n2,则值为真;

n1 -ge n2:n1大于等于n2,则值为真;

n1 -le n2:n1小于等于n2,则值为真;


测试字符串

-z s1:如果s1长度为零,则值为真;

-n s1:如果s1长度不为零,则值为真;

s1 = s2:如果s1与s2相等,则值为真;

s1 != s2:如果s1与s2不等,则值为真;

s1:如果s1不是空串,则值为真;


测试逻辑运算符

-a:二元“与”操作符。例:if test $x -gt $y -a $y -gt $z。

-o:二元“或”操作符。

!:一元“非”操作符。例:if test ! $x -eq $y。

Shell 条件测试

分类参考 文件状态测试 -b filename 当filename 存在并且是块文件时返回真(返回0) -c filename 当filename 存...
  • ruishenh
  • ruishenh
  • 2014年01月08日 13:45
  • 1539

shell学习笔记(五)—— shell条件测试

1、条件测试的基本语法 语法: a)、test expression 参数expression是要进行条件测试的表达式,可以由字符串、整数、文件名组成。 b)、[ expression ]...
  • u013144121
  • u013144121
  • 2015年02月11日 15:16
  • 732

shell浅谈之二运算符和IF条件判断

一、简介        变量是脚本语言的核心,shell脚本又是无类型的。变量本质上存储数据的一个或多个计算机内存地址,分为本地变量(用户当前shell生命期使用,随shell进程的消亡而无效,...
  • taiyang1987912
  • taiyang1987912
  • 2014年08月28日 15:44
  • 10398

shell之条件测试和判断语句

一 条件测试: Shell中,用测试语句测试指定的条件表达式的条件的真或假 当指定条件为真时,返回0,反之,返回非0 条件测试的语法:test命令和[ 命令] testexpressio...
  • qq504196282
  • qq504196282
  • 2016年11月01日 12:01
  • 219

shell中括号的特殊用法 linux if多条件判断

Shell中的括号有其特殊的用法, 现总结如下: 1. 符号$后的括号 ${a} 变量a的值, 在不引起歧义的情况下可以省略大括号. $(cmd) 命令替换, 结果为shell命令cmd的输出,...
  • tycoon1988
  • tycoon1988
  • 2014年09月09日 11:09
  • 14952

Linux Shell下条件语句:

Linux Shell下条件语句: 1、 测试字符串之间的关系 bash把所有的命令行和变量都看作字符串。一些命令如expr和test可以把字符当作数字进行操作。同样任何数字也可以...
  • Evils798
  • Evils798
  • 2013年03月07日 19:58
  • 6920

SHELL 编程 -- 条件测试

常用的测试一般包括对文件的测试 , 对字符串的测试和对数值的测试我们可以使用test 和 expr这两个工具来完成需要的测试数值的计算 使用expr : expr 一般用于整数, 有时也用与字符串基本...
  • ruiqingzheng
  • ruiqingzheng
  • 2013年03月14日 23:35
  • 302

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

一、条件判断式语句1-1.概述用来判断是与否,客观的而非主观判断,用于进行基本的管理1-2.按文件类型判断补充:&& 命令1&&命令2 逻辑与(没有数据传递) ...
  • u011105350
  • u011105350
  • 2015年08月18日 16:59
  • 1080

Linux Shell编程之 for循环语句 if条件语句

最近涉及Linux Shell编程,还不太熟悉,对于赋值语句,数值计算,循环语句,变量使用都不太熟悉。我不打算一个一个的说明知识点,我打算用最多2个例子说明所有的这些知识点。 Example 1 : ...
  • yangguangqizhi
  • yangguangqizhi
  • 2015年06月11日 22:31
  • 4792

linux中的条件测试

Linux Shell-条件测试 测试 Linux 的Shell中存在一组测试命令,该组命令用于测试某种条件或某几种条件是否真实存在。测试命令是判断语句和循环语句中条件测试工具,所以,其对于编写She...
  • wswit
  • wswit
  • 2015年11月12日 21:36
  • 679
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux Shell编程(三)--条件测试
举报原因:
原因补充:

(最多只允许输入30个字)