Linux中的if语句是shell编程中最常用的一个判断流程语句,它能够根据判断结果做出不同的处理。下面就来介绍一下if多条件判断语句的灵活用法。
首先,我们来看一种通过“或者”关键字“||”来实现多条件判断的方法。例如有如下脚本:
if [ $num -eq 1 ] || [ $num -eq 2 ]
echo “变量num的值为1或2”

上述脚本中,可以看到我们利用||这个关键字来将两个条件给结合在一起,并用if语句进行多条件判断,如果变量num的值等于1或2时,就进入then分支,输出一句提示信息。另外,我们还可以使用“与”关键字“&&”来实现if多条件判断,从而使脚本的条件结构更加简洁易懂。例如有如下脚本:```shellif [ $num -ge 3 ] && [ $num -le 5 ]thenecho "变量num的值在3-5之间"fi
上述脚本中,可以看到我们使用&&将两个条件连接起来,如果变量num的值处于3-5之间时,就进入then分支,输出一句提示信息。
同时,我们还可以在if句中结合[ ]和test命令混合使用,来实现多条件判断。例如有如下脚本:
if [ $num -eq 1 ] || test $num -eq 2
echo “变量num的值为1或2”
上述脚本中,利用[ ]命令和test命令来结合if条件语句实现判断,如果变量num的值等于1或2时,就进入then分支,输出一句提示信息。总之,Linux中的if多条件判断可以按照不同方式进行灵活处理,这既降低了程序员的编程难度,又能够让我们的脚本更加简洁有效。
香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云 服务器 和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
如何在LINUX SHELL 脚本中 用IF语句表达
if [ -d /home/c ];thendo sthelsedo sthfi
linux shell如何判断上一条命令是否有输出
可以将命令的执行结果赋值给一个变量,然后通过变量的长度来判断是否有输出,如下命令判断是否有fake raid:info=`ls/dev/mapper/isw_*`if[-z$info];thenechofindnofakeraidelseechoyes,findresultis$infofi这里info变量保存的是`ls /dev/mapper/isw_*`输出结果,通过if来判断输出是否为空,-z判断为空,-n判断是非空
怎么学批处理?
后缀是bat的文件就是批处理文件,是一种文本文件。 简单的说,它的作用就是自动的连续执行多条命令,批处理文件的内容就是一条一条的命令。 那它有什么用呢?echo、@、call、pause、rem 是批处理文件最常用的几个命令,我们就从他们开始学起。 echo 表示显示此命令后的字符echo off 表示在此语句后所有运行的命令都不显示命令行本身@ 与echo off相象,但它是加在其它命令行的最前面,表示运行时不显示命令行本身。 call 调用另一条批处理文件(如果直接调用别的批处理文件 ,执行完那条文件后将无法执行当前文件后续命令)pause 运行此句会暂停,显示Press any key to continue... 等待用户按任意键后继续rem 表示此命令后的字符为解释行,不执行,只是给自己今后查找用的批处理文件中还可以像C语言一样使用参数,这只需用到一个参数表示符%。 %表示参数,参数是指在运行批处理文件时在文件名后加的字符串。 变量可以从 %0到%9,%0表示文件名本身,字符串用%1到%9顺序表示。 if goto choice for 是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。 if 表示将判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:1、if 参数 == 字符串待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。 (注意是两个等号)2、if exist 文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。 3、if errorlevel 数字待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。 goto 批处理文件运行到这里将跳到goto 所指定的标号处, 一般与if配合使用。 标号用 :字符串 表示,标号所在行不被执行choice 使用此命令可以让用户输入一个字符,从而运行不同的命令。 使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。 它的返回码为1234……
发表评论