shell中的if判断语句怎么写_shell编程if语句格式

shell中的if判断语句怎么写_shell编程if语句格式文章目录1.判断语句介绍-if2.if…else语句(一个条件两个判断结果)3.if…elif…else语句(多条件多个判断结果)4.if嵌套if语句5.if和命令的操作1.判断语句介绍-if当编写程序时,需要对上一步执行代码是否执行成功进行判断,可以用if语句进行判断。通过查看if语句执行的判断结果查看代码是否执行成功当满足条件的代码块中有exit,表示退出脚本执行注意:注意if和[]有空格,[]和condition也有空格隔开,运算符也有空格。缩进可以任意缩进单

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1. 判断语句介绍 – if

当编写程序时,需要对上一步执行代码是否执行成功进行判断,可以用if语句进行判断。通过查看if语句执行的判断结果查看代码是否执行成功

当满足条件的代码块中有exit ,表示退出脚本执行

注意: 注意if和[]有空格,[]和condition也有空格隔开,运算符也有空格。缩进可以任意缩进

单if 语句(一个条件一个判断结果)
适用范围: 一步判断,对给定的条件进行判断,条件返回Ture执行Ture语句,条件为False则不执行单if语句

if语法格式:

在脚本中:
	if [ condition ]		=>	true or false
		then			=>	条件为ture时执行commands代码块
			commands		=>	代码块,一行或者多行代码。
	fi						=>	if语句结束
#l 备注:在代码块中加入一行"exit 8",即结束脚本,后面的代码不再执行


在终端中:
	#if [ condition ]; then commands; fi

单if 语句流程图:
在这里插入图片描述

2. if…else 语句(一个条件两个判断结果)

适用范围: 两步判断,对给定的条件进行判断,条件返回Ture执行Ture语句,条件为False执行else语句。

if.else语法格式:

if [ condition ]
	then			=>	条件为真,执行commands1
		commands1
else				=>	条件为假,执行commands2
		command2
fi

if…else 语句流程图:
在这里插入图片描述

3. if…elif…else 语句(多条件多个判断结果)

使用范围: 多用于两个以上的条件进行判断结果

条件从上至下进行判断,满足则执行条件下的语句并结束if判断。若都不满足则执行else的语句

else 这个条件不写也可以

if…elif…if 语法格式:

if [ condition1 ] 		=>	判断是否满足条件1,满足执行commands1,结束判断
	then
		commands1
elif [ condition2 ]		=>	当不满足条件1,判断是否满足条件2,满足执行commands2,结束判断
	then
		commands2
...
//else					=>	若上面的条件都不满足,则 执行else下的commandsx
//	commandsx			=>	可以不写
fi	

#l 备注:多条件判断之间存在包容关系,需要从最严格的条件开始判断,
		比如:判断系统内存使用率:
			60%			警告
			70%			严重警告
			80%			发邮件
			60%以下		打印使用率
		如果第一个条件判断是60%,那么70、80都符合第一个条件。后面的条件判断就没有意义了,因为高于60就执行警告,后面条件不执行了

if…elif…else 语句流程图:
在这里插入图片描述

4. if嵌套if 语句

适用范围: 当有多条判断时,可以使用if嵌套

if 条件判断成功,执行if 嵌套内容,否则执行else语句

编写的时候呀从外往里编写

if嵌套if 语句格式:

if [ condition1 ]
	then
	if [ condition2 ]		=>	当条件1满足,判断条件2是否满足,满足执行commands1
		then
			commands1
		...
	else					=>	条件2不满足执行commands2
		commands2
	fi
else					=>	当条件1不满足执行commands3
	commands3
fiif [ condition1 ]		=>	当条件1满足,执行commands1
	then
		commands1
else		
	if [ condition2 ]	=>	当条件1不满足,条件2满足时,执行条件3
		then
		if [ condition3 ]		=>	当条件1不满足,条件23满足时,执行commands3
			then
				commands3
			else				=>	当条件1不满足,条件2满足时且条件3不满足,执行commands4
				commands4
			fi	
		...
	else			=>	当条件1和2都不满足时,执行commands5
		commands5
	fi
fi

5. if 和命令的操作

  • 系统会执行命令的操作,加入命令执行成功进入下一步操作

  • !选项代表非

  • 通过 echo $?查看,如果返回0表示执行成功,返回其他表示执行不成功

语法:
# if options (命令) 
# then 
# command
# fi
		options说明:
			!:表示命令执行不成功,则执行command

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170867.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vue子组件向父组件传值的三种方式_vue子组件改变父组件的值

    vue子组件向父组件传值的三种方式_vue子组件改变父组件的值1、前言日常积累,欢迎指正2、正文vue2.6.11博客正文为三种方法的核心代码记录,源代码在vue-project的分支dev-005,可以直接获取代码运行查看2.1、子组件中直接this.$parent.parentNameInParentMethod()/**父组件*/exportdefault{methods:{search…

    2022年10月2日
    3
  • Eclipse快捷键_10个最高效的快捷键

    1. ctrl+shift+r:打开资源    这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。2. ctrl+o:快速outline    如果想要查看当前类的方法或某个特定方法,但又不想把代码拉上拉下,也不想使用查找功能的话

    2022年3月10日
    42
  • LocalDateTime方式字符串转Date

    LocalDateTime方式字符串转Date2019独角兽企业重金招聘Python工程师标准>>>…

    2022年10月3日
    7
  • stimulsoft mysql_Stimulsoft Server

    stimulsoft mysql_Stimulsoft ServerStimulsoftReports.Server是一个客户服务器系统,允许您轻松、高效地使用报表实现完整的工作周期,包括从执行信息处理任务的设计和自动化到为用户准备便利的结果演示。快速和现代化的StimulsoftReports技术实现了报表模块的功能,并且灵活性和可靠性都经过了测试。StimulsoftReports.Server的特性概括:使用图形元素和不同的图表可以将通用数据源转换为明亮和…

    2022年7月26日
    5
  • String字符串操作之截取

    String字符串操作之截取1、截取字符串substring1.1、java中截取publicstaticvoidmain(String[]args){//uuid获取,importjava.util.UUID;Stringuuid36=UUID.randomUUID().toString();System.out.println(uuid36);////565a58bc-d87a-411d-8a09-e7c3ef28dc4bSt

    2022年5月19日
    65
  • string转JSONObject遍历多层找到key的value

    string转JSONObject遍历多层找到key的value先上代码packagecom.zhph;/***@Description:*@Author:xuhaibo*@Date:${Date}*@ModifiedBy:*/importnet.sf.json.JSONArray;importnet.sf.json.JSONObject;importjava.util.Iterator;/****@compa

    2022年8月23日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号