f, for, while几乎是所有编程语言的关键字,在Shell编程中也不例外,其中if是使用频率最高的,由于Shell编程中不存在对象(Object)的概念,因此在if的比较判断中主要是对字符串、数字的值进行比较判断的: 一. if的基本语法 1.if与[之间要有空格 2.[]与判断条件之间也必须有空格 3.]与;之间不能有空格 二. 对字符串的判断 1.if [ str1=str2 ];then fi #当两个字符串相同时返回真 2.if [ str1!=str2 ];then fi #当两个字符串不相等时返回真 3.if [ -n str1 ];then fi #当字符串的长度大于0时返回真 (判断变量是否有值) 4.if [ -z str1 ];then fi #当字符串的长度为0时返回真 三. 对数字的判断 1.int1 -eq int2 #int1和int2相等 2.int1 -ne int2 #int1不相等int2 3.int1 -gt int2 #int1大于int2 4.int1 -ge int2 #int1大于等于int2 5.int1 -lt int2 #int1小于int2 6.int1 -le int2 #int1小于等于int2 四. 对文件属性的判断 1.-r file #用户可读为真 2.-w file #用户可写为真 3.-x file #用户可执行为真 4.-f file #文件存在且为正规文件为真 5.-d file #如果是存在目录为真 6.-c file #文件存在且为字符设备文件 7.-b file #文件存在且为块设备文件 8.-s file #文件大小为非0为真,可以判断文件是否为空 9.-e file #如果文件存在为真 五. 逻辑判断 1.-a #与 2.-o #或 3.! #非
shell脚本中if基本使用方法
关注
打赏