if, if/else, if /elif/else,case
一、if语句用法
if expression
then
command
fi
例子:使用整数比较运算符
read -p "please input a integer:" a
if [ "$a" -gt 10 ]
then
echo "The integer which you input is bigger than 10。"
exit 100
fi
备注:执行脚本后,exit 命令可以返回退出状态, echo $?可以打印退出状态
二、if/else语句用法
if expression
then
command
else
command
fi
例子:判断文件是否存在。
if [ -e "$1"] #$1是位置参数
then
echo "the file $1 is exist"
else
echo "the file is $1 not exist"
fi
三、if/elif/else语句用法
if expression1
then
command
elif expression2
then
command
elif expression3
then
command
else
command
fi
例子:输入分数,判断分数等级
#!/bin/bash
read -p "please input your score:" s
if [ "$s" -ge 90 ]
then
echo "The grade is A!"
exit 1
elif [ "$s" -ge 80 ]
then
echo "The grade is B!"
exit 2
elif [ "$s" -ge 70 ]
then
echo "The grade is C!"
exit 3
elif [ "$s" -ge 60 ]
then
echo "The grade is D!"
exit 4
else
echo "The grade is E!"
exit 5
fi
//运行实例
[root@localhost lzic]# ./a.sh
please input your score:90
The grade is A!
[root@localhost lzic]# echo $?
1
[root@localhost lzic]# ./a.sh
please input your score:20
The grade is E!
[root@localhost lzic]# echo $?
5
三、case用法
case variable in
value1)
command
value2)
command
value3)
command
*)
command
esac
if, if/else, if /elif/else,case的更多相关文章
- py004.python的逻辑运算,随机数及判断语句if,elif,else
判断语句又称 "分支语句" if判断语句的格式: if 条件1: 条件1满足时,执行的代码 -- # 前面有缩进4个空格 elif 条件2: 条件2满足时,执行的代码 -- # 前 ...
- 求两个数字的最大公约数-Python实现,三种方法效率比较,包含质数打印质数的方法
今天面试,遇到面试官询求最大公约数.小学就学过的奥数题,居然忘了!只好回答分解质因数再求解! 回来果断复习下,常用方法辗转相除法和更相减损法,小学奥数都学过,很简单,就不细说了,忘了的话可以百度:ht ...
- [python学习] 介绍python的property,以及为什么要用setter,一个小栗子
python中的property是比较好用的. 先来一段代码 #-*- coding:utf-8 -*- class C(object): status_dict = { 1: 'accept', 2 ...
- Python之路-python(paramiko,进程和线程的区别,GIL全局解释器锁,线程)
一.paramiko 二.进程.与线程区别 三.python GIL全局解释器锁 四.线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生 ...
- 转一贴,今天实在写累了,也看累了--【Python异步非阻塞IO多路复用Select/Poll/Epoll使用】
下面这篇,原理理解了, 再结合 这一周来的心得体会,整个框架就差不多了... http://www.haiyun.me/archives/1056.html 有许多封装好的异步非阻塞IO多路复用框架, ...
- Python的模块,模块的使用、安装,别名,作用域等概念
所谓的模块就是将不同功能的函数分别放到不同的文件中,这样不仅有利于函数的维护,也方便了函数的调用.在Python中,一个.py文件就是一个模块(Module). 在模块的上层有一个叫做包(Packag ...
- powerpc e500系列,linux初始化的tlb汇编,添加人肉代码注释
powerpc e500的内核启动,关于tlb的初始化可以说是重头戏.看懂这段代码后,powerpc的虚实映射基本不在话下. 这段初始化tlb要考虑的,主要是将boot可能初始化过的tlb全清零,然后 ...
- 人工神经网络,支持任意数量隐藏层,多层隐藏层,python代码分享
http://www.cnblogs.com/bambipai/p/7922981.html------误差逆传播算法讲解 人工神经网络包含多种不同的神经网络,此处的代码建立的是多层感知器网络,代码以 ...
- 多态,封装,反射,类内置attr属性,os操作复习
1.多态 #多态 多态是指对象如何通过他们共同的属性和动作来操作及访问,而不需要考虑他们具体的类 运行时候,多种实现 反应运行时候状态 class H2O: def __init__(self,nam ...
随机推荐
- Node中require第三方模块的规则
Node.js中使用CommonJs模块化机制,通过npm下载的第三方包,我们在项目中引入第三方包都是:let xx = require('第三方包名'),究竟require方法加载第三方包的原理机制 ...
- dmesg命令
用于检测和控制内核环缓冲.程序用来助用户了解系统的启动信息 Linux命令dmesg用来显示开机信息,kernel会将开机信息存储在ring buffer中 开机信息保存在/var/log目录中名称为 ...
- 编译 Unity 4.3.1 引擎源码
引言 Unity 官方从 Unity 2017.1 版本开始,开源了引擎和编辑器的C#源码(源码地址:UnityCsReference),但核心的 C/C++ 部分源码并未开源. 编译环境 网上主要的 ...
- MYSQL使用source命令,导入SQL文件
命令 source D:/student.sql
- Class.getDeclaredFields()和Class.getFields()的区别。 Class.getMethods()和Class.getDeclaredMethods()的区别。
package www.cn.extend; /** Animal * 2019/07/04 * @author Administrator * */ public class Animal { pu ...
- vsftpd配置文件
一.默认配置 1. 允许匿名用户和本地用户登录 anonymous_enable=YES local_enable=YES 2. 匿名用户使用的登录名为ftp或anonymous,密码为空:匿名用户不 ...
- linux命令提示符上色
vi /etc/profile RED='\[\e[31;1m\]' Yello='\[\e[33;1m\]' Green='\[\e[32;1m\]' End='\[\e[0m\]' Pur='\[ ...
- 完美快速解决百度分享不支持HTTPS的问题
百度分享不支持HTTPS这件事由来已久,我之前向百度分享提交过这个问题,无果!但近期themebetter主题用户咨询的比较多,我们就总结了解决方案. 第一步:下载百度分享必备文件 点此下载stati ...
- sqlzoo易错题
https://sqlzoo.net/wiki/SELECT_names 答案在:https://github.com/codyloyd/sqlzoo-solutions/blob/master/SQ ...
- docker镜像里的tag那些事--alpine,slim,stretch,jessie
https://stackoverflow.com/questions/54954187/docker-images-types-slim-vs-slim-stretch-vs-stretch-vs- ...