Linux中的流程控制语句
if语句
if [ 条件判断式 ]
then
程序
elif [ 条件判断式 ]
then
程序
else
程序
fi
注意:
a.使用fi结尾
b.条件判断式和中括号之间需要有空格
[root@localhost sh]# cat if_test.sh
#!/bin/bash
#判断系统硬盘使用率 rate=$(df -h | grep /dev/sda1 | awk '{print $5}' | cut -d "%" -f1) if [ $rate -ge 90 ]
then
echo "dev/sda1 is full"
echo "now use : $rate"
elif [ $rate -ge 80 ]
then
echo "dev/sda1 will be full"
echo "now is $rate"
else
echo "dev/sda1 is not full"
echo "now use : $rate"
fi [root@localhost sh]# sh if_test.sh
dev/sda1 is not full
now use : 7
[root@localhost sh]#
case语句
case $变量名 in
"值1")
如果值为1就执行这里的代码
;;
"值2")
如果值为2就执行这里的代码
;;
*)
如果都匹配不上就执行这里的代码
;;
esac
[root@localhost sh]# cat case_test.sh
#!/bin/bash
#判断用户输入 read -p "input yes/no: " -t 30 cho
case $cho in
"yes")
echo "intput is yes"
;;
"no")
echo "input is no"
;;
*)
echo "error input"
;;
esac [root@localhost sh]# sh case_test.sh
input yes/no: yes
intput is yes
[root@localhost sh]#
for语句
语法一:
for 变量 in 值1 值2 值3
do
程序
done
[root@localhost sh]# cat for1.sh
#!/bin/bash
#打印时间
for time in moring noon afternoon evening
do
echo "This time is $time"
done [root@localhost sh]# sh for1.sh
This time is moring
This time is noon
This time is afternoon
This time is evening
[root@localhost sh]#
[root@localhost sh]# cat for2.sh
#!/bin/bash
#打印文件名
ls > ls.log
for f in $(cat ls.log)
do
echo "File is $f"
done [root@localhost sh]# sh for2.sh
File is case_test.sh
File is for1.sh
File is for2.sh
File is if_test.sh
File is ls.log
File is param_test1.sh
File is param_test2.sh
File is param_test3.sh
[root@localhost sh]#
语法二:
for ((初始值;循环控制条件;变量变化))
do
程序
done
[root@localhost sh]# cat for3.sh
#!/bin/bash
#从1加到100
s=0
for((i=1;i<=100;i++))
do
s=$(($s+$i))
done echo "Sum $s"
[root@localhost sh]# sh for3.sh
Sum 5050
[root@localhost sh]#
while循环
while [条件判断式]
do
程序
done
[root@localhost sh]# cat while_test.sh
#!/bin/bash
#从1到100累加
i=1
s=0
while [ $i -le 100 ]
do
s=$(($s+$i))
i=$(($i+1))
done
echo "Sum $s"
[root@localhost sh]# sh while_test.sh
Sum 5050
[root@localhost sh]#
until循环
until [条件判断式]
do
程序
done
[root@localhost sh]# cat until_test.sh
#!/bin/bash
#从1到100累加
i=1
s=0
until [ $i -gt 100 ]
do
s=$(($s+$i))
i=$(($i+1))
done
echo "Sum $s"
[root@localhost sh]# sh until_test.sh
Sum 5050
[root@localhost sh]#
Linux中的流程控制语句的更多相关文章
- linux shell awk 流程控制语句(if,for,while,do)详细介绍
在linux awk的 while.do-while和for语句中允许使用break,continue语句来控制流程走向,也允许使用exit这样的语句来退出.break中断当前正在执行的循环并跳到循环 ...
- Mysq中的流程控制语句的用法
这篇博客主要是总结一下Mysq中的流程控制语句的用法,主要是:CASE,IF,IFNULL,NULLIF 1.case CASE value WHEN [compare-value] THEN res ...
- SQL SERVER中的流程控制语句
流程控制语句 是指用来控制程序运行和流程分至点额命令.一般指的是逻辑计算部分的控制. 1.Begin End语句 封装了多个T-SQL语句组合,将他们组成一个单元来处理. 一般在条件查询或者循环等控制 ...
- JS中的流程控制语句
什么叫做语句? 语句:可以理解为语言中一句一句完整的话,程序是由一条条语句构成的,语句是按照自上往下的顺序执行的. 在JavaScript可以使用{ }来为语句进行分组.同一{ }中的语句称为一组 ...
- JavaScript基础&实战(3)js中的流程控制语句、条件分支语句、for循环、while循环
文章目录 1.流程控制语句 1.1 代码 1.2 测试结果 2.弹窗提示输入内容 2.1 代码 2.2 测试结果 3.条件分支语句 3.1 代码 3.2 测试结果 4.while和 do...whil ...
- java中的流程控制语句总结
程序的结构分类: 顺序结构:按照写代码的顺序 一次执行 选择结构:根据条件的不同有选择的执行不同的代码 循环结构:在一定条件下 反复执行某一片代码 选择结构: 也叫分支结构 根据条件的不同,有选择的执 ...
- Linux Shell 02 流程控制语句
一.if语句格式:支持if/elif/else形式,支持嵌套 1. command执行成功(及退出状态为0)时,执行command2 2. 当判断条件为test命令时,判断结果为true时,执行com ...
- python 中的流程控制语句
原文 if 语句 >>> x = int(input("Please enter an integer: ")) Please enter an integer: ...
- PHP:第二章——PHP中的流程控制语句
if语句的集中形式 <?php /*if(条件) 语句; if(条件){语句块} if(条件){语句或语句块}else{语句或语句块} if(条件){语句或语句块}elseif(条件){语句或语 ...
随机推荐
- CMD常用功能
1.导出文件目录树状结构 命令:“tree>file.txt /f”
- 一个由正则表达式引发的血案 vs2017使用rdlc实现批量打印 vs2017使用rdlc [asp.net core 源码分析] 01 - Session SignalR sql for xml path用法 MemCahe C# 操作Excel图形——绘制、读取、隐藏、删除图形 IOC,DIP,DI,IoC容器
1. 血案由来 近期我在为Lazada卖家中心做一个自助注册的项目,其中的shop name校验规则较为复杂,要求:1. 英文字母大小写2. 数字3. 越南文4. 一些特殊字符,如“&”,“- ...
- VS代码注释插件GhostDoc
http://community.submain.com/blogs/tutorials/archive/2013/03/28/how-to-access-ghostdoc-pro-features. ...
- JsCal( JS Calendar)
http://www.dynarch.com/projects/calendar Doc: http://www.dynarch.com/jscal/ This is the documentatio ...
- TPM Key相关概念
1. Storage Keys:存储密钥,用来加密数据和其它密钥的通用非对称密钥,这里的其它密钥可以是另外一个存储密钥,也可以是绑定密钥或签名密钥.它本身是长度2048bit的RSA私钥:它既可以是可 ...
- Python Socket 网络编程 (客户端的编程)
Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏览网页.QQ ...
- php 佛祖保佑 永无bug
<pre name="code" class="java">/* _ooOoo_ o8888888o 88" . "88 (| ...
- 光圈与F数相关知识
一.F数 F数.光圈数.相对孔径的倒数. F数代表的意义 F数小(光圈大).F数大(光圈小). F数又称为镜头速度,F数小的镜头速度快.因为拍摄的曝光时间△t 正比于F数的平方. F数还能表征镜头的分 ...
- libevent在windows下用visual studio编译时出现error C2894错误的原因与解决方法
libevent是一个使用很广泛的网络库,今天想了解下它.于是去git clone了一份源码,用vs2005的命令行:nmake -f makefile.nmake编译之,顺利编译通过,生成三个静态库 ...
- Laravel5.1 数据库-查询构建器
今儿个咱说说查询构建器.它比运行原生SQL要简单些,它的操作面儿也是比较广泛的. 1 查询结果 先来看看它的语法: public function getSelect() { $result = DB ...