详解Shell编程之if语句实战(小结)
本篇文章主要介绍了详解Shell编程之if语句实战(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
对于if语句,其实很多人都肯定的听说过,那么if语句到底是什么,简单的说,就类似于汉语里面的如果----那么,if语句是linux运维人员在实际环境中使用的最频繁也是最重要的语句!!!
一、if条件语句
1、单分支语句结构
第一种语法如下:
if <条件表达式> then 指令 fi
第二种语法
if <条件表达式>; then 指令 fi
在以上这两种方式中我还是喜欢用第一种,这个是看个人习惯的。在上面的两个语法中<条件表达式>可以是 test [] [[]] (())等条件表达式,甚至可以使用命令作为条件表达式。注意:每个if语句都是以if开头 fi结束,中间并带有then;
其实很简单,举个例子如下:
if [ -f file ] then echo “是一个普通文件” else echo “不是一个普通文件” exit 1 fi
剖析:如果file是一个普通文件,那么就执行echo “是一个普通文件” 否则 输出一条"不是一个普通文件" 最后退出脚本婴儿起名
其实以下的这段命令更能清晰的了解if语句如下:
如果 <你不会if语句> 那么 那肯定长的不帅 果如
2、以上就是单分支的if语句,接下来看看双分支的if语法结构
if <条件表达式> then 指令一 else 指令二 fi
以上就是单分支的if语句结构,那么在举个例子如下:
if [ -f file ] then echo “这是一个普通文件” else echo “NONONO” fi
这个和以上的例子是一样的。同样是测试file是不是一个普通文件,如果是,那么就输出指令1 否则那么就输出指令2
到这里我们在来一个形象描述
如果 <你不会if语句> 那么 就快点学,快点练 否则 你永远都不可能学会 果如
我们发现 单分支和双分支的区别就在于一个有else 一个没有。
3、多分支if语句结构
我们在上面说了 单分支和双分支 这里又有了一个多分支,我们可以理解为双分支里面包含了单分支,那么多分支里面肯定包含了单分支+双分支:个人理解,好像有点绕? 先来看看多分支吧 如下:
if 语句多分支结构主体为:如果…那么…否则如果…那么…否则如果…那么,,,,
例1:
if [ -f file ] then echo “yes yes yes” elif [ -z file ] then echo “yes yes” else echo “nonono” fi
解释如下图:
看完图还是没理解? 没有关系 如下:
到这里应该是没有问题了~~
单分支if条件语句实践
把下面的测试文件中条件表达式改为if条件语句
[root@shell-yankerp sh]# [ -f file ] && echo “yes” || echo “no” yes
修改如下:
if [ -f file ] then echo “yes” else echo “no” fi
运行结果如下:
[root@shell-yankerp sh]# [ -f file ] && echo “yes” || echo “no” yes [root@shell-yankerp sh]# sh cs.sh yes [root@shell-yankerp sh]# cat cs.sh #!/bin/bash # Maintenance:ywyankerp@163.com # BINLOG:www.ywyankai.cn # DATE:03:31:35 CST, Sunday, 02 month, 2018, 04 # Test scripts if [ -f file ] then echo “yes” else echo “no” fi [root@shell-yankerp sh]#
详解Shell编程之if语句实战(小结)相关推荐
- shell编程之case语句及函数
shell编程之case语句 文章目录 shell编程之case语句 一.case语句 1. 语法结构 2. 应用案例 二.函数 1. 什么是函数? 2. 如何定义函数? 3. 函数如何调用? ㈠ 当 ...
- Android编程之SparseArrayE详解
Android编程之SparseArrayE详解
Android编程之SparseArray<E>详解 分类:Android2012-09-01 13:139412人阅读评论(5)收藏举报 android编程delete存储list 最近 ...
- Shell 编程之 case 语句
一.case 语句 1.case 语句概述 (1)case 语句的作用 使用 case 语句改写 if 多分支可以使脚本结构更加清晰.层次分明.针对变量的不同取 值,执行不同的命令序列. 2.case ...
- shell脚本求和_【零基础学云计算】Shell编程之case语句与循环语句
case多分支语句 循环语句 for循环语句 while循环语句 untli循环语句 Shell函数 Shell数组 case语句的结构 针对变量的不同取值,分别执行不同的命令序列 case 变量值 ...
- SHELL编程之CASE语句+函数+正则
case语句 一.case语句 案例1 案例2 课堂练习1 二.函数 2.1 函数定义 2.2 函数的调用 2.3 应用案例 三.综合案例 四.正则表达式 1. 什么是正则表达式 2. 第一类正则 3 ...
- Shell编程之case语句与函数
一.case语句 1.语法结构 2.应用案例 1)脚本传不同值做不同事 2)根据用户需求选择做事 二.函数 1.什么是函数? 2.如何定义函数? 3.函数如何调用? 1)当前命令行调用 2)定义到用户 ...
- Shell编程之case语句
1. case 语句 1.基本语法 case $变量名 in "值1") 如果变量的值等于值1,则执行程序1;; "值2") 如果变量的值等于值2,则执行程序2 ...
- Linux高级专题详解--shell编程大全(shell变量,if语句,case语句,for循环,while循环,函数调用,数组,正则表达式,shell脚本三剑客--grep,sed,awk家族)
shell编程 初始shell 程序 语言 编程 ---------------------------------- 语言 自然语言:汉语.英语 计算机语言:c语言.c++.(java php py ...
- shell脚本详解(四)——循环语句之while循环和until循环(附加例题及解析)
shell脚本详解(四)--循环语句之while循环和until循环 一.until循环 1.循环结构 2.例题 二.while循环 1.循环结构 2.例题(每个人的思路不同,会导致脚本内容不一样,这 ...
最新文章
- 查看电脑电池损耗的命令
- JAVA——监听器ActionListener与MouseListener执行顺序
- 编程语言是从哪蹦出来的——大型伦理寻根现场
- 登录mysql报错2059_navicat连接mysql报错2059的解决方法
- 哪个更值得入手?荣耀8与小米6对比评测
- 代码逆流成河,深入C++如何又快又有效?
- 彻底理解jdbc为什么用反射创建驱动程序对象
- 安卓3D游戏-神奇宝贝防御战
- Atom飞行手册翻译: 3.6 图标
- DataGradView操作之,列头右键菜单隐藏和显示字段功能
- React 性能优化技巧总结
- webpack 分离css html,【已解决】ReactJS中Webpack打包时分离css
- python简单代码恶搞-python—做一个恶搞程序
- 纯Qt版中国象棋:实现双人对战、人机对战及网络对战
- Docker端口映射实例
- alpha对冲(股票+期货)——Python量化
- [Halcon例程学习]增强指纹纹理的coherence_enhancing_diff
- 领航云计算发展风向标,亚马逊云科技的这些硬核布局值得关注
- mysql学习ppt摘抄笔记
- 快速学习编程语言,快速高效的入门