if else语句linux,linux基础(十四)----linux编程基础----linux条件控制语句----if else语句...

if语句

当需要程序检测一个条件是真还是假的时候,就可以使用if语句。if语句仅仅是告诉程序:“如果条件为真,则执行这些指令,否则跳过这些指令。”

一个条件为真的语句可以让程序执行一组指令,一个条件为假的语句则跳过这些指令。

if语句的规则如下:

if[Condition]

then

Instruction

fi

一般说来,如果Condition存在(即条件Condition为真),程序则执行下面的Instruction。

条件Condition必须是真或假,且永远如此。

下面举两个例子来说明if语句的用法。第一个例子是让程序判断一个盒子是否已装满,条件是盒子最多只能装下100个小甜饼。

if[$Quantity -eq 100]

then

echo "The box is full"

fi这个语句让程序检测一下变量Quantity的值,看它是否是100。如果是,则在屏幕上显示:

The box is full.

否则,就跳过这条语句,并移到fi的下一条语句。注意,在这里,fi是一个保留字,它有特殊的含意(标志if语句的结束)。

再举一个例子,要求程序检测一下盒子是否已满,及是否还有其他的盒子可获得。当且仅当这两个条件同时是真时,程序才会报告无法再装甜饼了,如下例所示:

if [$Quantity -eq 100 ] &&[$AvailableBoxes -lt 1]

then

echo "The box is full and you have no more boxes,”

fi这条语句要求程序检测一下变量Quantity的值,看它是否是100,及变量AvailableBoxes的

值是否小于1。如果这两个条件都为真,则显示信息:The box is Full and you have no more boxes.

如果变量Quantity的值不是100,且盒子也有剩余,程序则跳过这条语句,移到保留字fi的下一条语句。

if else语句

if语句可以使程序依据一个条件来做出某种判断,如果条件是真则执行一组规定的指令。

但是,在使用if语句时也存在着一个问题,即条件是假时,可能还需要为程序提供另外一组指令。

当然,也可以再用一条if语句来解决这个问题,即在条件为假时让程序执行另一组指令。但是,有一种方法比这更简单,这就是if else语句。if else语句的语法规则是:

if[Condition]

then

Instruction1

else

Instruction2

fi

这条语句表示,如果Condition条件为真,程序则执行第一组指令(Instruction1);如果Condition(条件)为假,则程序执行第二组指令(Instruclian2 )

例如:

if[$Quantity -eq 100]

then

echo "The box is full"

else

echo "The box is not full"

fi

if  elif语句

if elif语句的语法规则如下:

if[Condition1]

then

Instruction1

elif [Condition2 ]

then

Instruction2

fi

在这条语句中,如果条件Condition1是真,程序则执行第一组指令Instruction1 ;否则,程序再判断条件Condition2是否是真。如果条件不为真,程序则执行第二组指令Instruction2;如果Condition2是假,则跳过第二组指令。

例子:

if[$Quantity -eq 100]

then

echo "The box is full"

elif [$Quantity -eq 95]

echo "You can add 5 cookies to the box."

fi

用if elif语句进行多重选择

在程序中使用多重if elif语句进行条件检测,程序能处理多种可能。多重if elif语句结构规则如下:

if[Condition1]

then

Instruction1

elif[Condition2]

then

Instruction2

elif[Condition3]

then

Instruction3

fi

在这条语句中,如果Condition1是真,程序执行第一组指令Instruction1 ;否则,检测条件Condition2是否是真。如果条件Condition2是真,则执行第二组指令Instruction2 ;否则,检测Condition3是否是真。若条件Condition3是真,则执行第三组指令Instruction3;否则,跳过第三组指令Instruction3。

保证Linux至少执行一组指令

想像一下,如果我们写了一个结构庞大的if elif语句,却发现它什么也不干,会是什么感觉?先别笑,在实际编程中确实有这样的事发生。不过,要是在if elif语句的最后放一条elif fi语句,就可以避免这样的灾难,如下例所示:

if[Condition1]

then

Instruction1

elif[Condition2]

then

Instruction2

elif[Condition3]

then

Instruction3

elif

Instruction4

fi

在这条语句中,如果Condition1是真,程序执行第一组指令Instruction1 ;否则,检测条件Condition2是否是真。如果条件Condition2是真,则执行第二组指令Instruction2 ;否则,检测Condition3是否是真。若条件Condition3是真,则执行第三组指令Instruction3;否则,执行第四组指令Instruction4。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值