您的位置:首页 > 运维架构 > Shell

Shell编程中if的语法和常见判断用法

2015-06-24 12:53 387 查看
if, for, while几乎是所有编程语言的关键字,在Shell编程中也不例外,其中if是使用频率最高的,由于Shell编程中不存在对象(Object)的概念,因此在if的比较判断中主要是对字符串、数字的值进行比较判断的:

一. if的基本语法

if与[之间要有空格

[]与判断条件之间也必须有空格

]与;之间不能有空格

二. 对字符串的判断

if [ str1=str2 ];then fi #当两个字符串相同时返回真

if [ str1!=str2 ];then fi #当两个字符串不相等时返回真

if [ -n str1 ];then fi #当字符串的长度大于0时返回真 (判断变量是否有值)

if [ -z str1 ];then fi #当字符串的长度为0时返回真

三. 对数字的判断

int1 -eq int2 #int1和int2相等

int1 -ne int2 #int1不相等int2

int1 -gt int2 #int1大于int2

int1 -ge int2 #int1大于等于int2

int1 -lt int2 #int1小于int2

int1 -le int2 #int1小于等于int2

四. 对文件属性的判断

-r file #用户可读为真

-w file #用户可写为真

-x file #用户可执行为真

-f file #文件存在且为正规文件为真

-d file #如果是存在目录为真

-c file #文件存在且为字符设备文件

-b file #文件存在且为块设备文件

-s file #文件大小为非0为真,可以判断文件是否为空

-e file #如果文件存在为真

五. 逻辑判断

-a #与

-o #或

! #非

源自:http://www.yunweipai.com/archives/2344.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: