Shell脚本应用(if语句的应用示例)

一、条件测试操作

1、文件测试

(1)测试目录/media是否为目录,$?返回值为0,表示存在此目录。

如果$?返回值非0,表示不存在此目录

(2)测试目录是否存在,输出结果更加直观。

输出“yes”表示该目录存在

无“yes”输出表示该目录不存在

2、整数值比较

(1)判断当前已登录的用户数,当超过5个时输出“too many”。

没有出现“too many”说明没有超过5个。

(2)判断当前可用的空闲内存(buffers/cache)大小,当低于2048MB输出具体数值。

3、字符串比较

用户输入“yes”或“no”来确认某个任务

4、逻辑测试

判断当前linux系统的内核版本是否大于2.4。

查看内核

判断

二、if条件语句

1、单分支if语句

(1)判断挂载点目录,若不存在则自动创建

步骤:首先创建脚本vim chkmountdir.sh 编辑脚本,赋予x权限并执行(详细脚本如下图)

执行并查看

(2)判断当前用户是否为root,如果不是则报错并执行“exit 1”退出脚本,不再执行其他代码。

步骤:编辑一个脚本 vim /opt/chkifroot.sh并切换用户验证

创建并切换用户验证

2、双分支if语句

(1)判断目标主机是否存活,显示检测结果

步骤:创建脚本 vim pinghost.sh

赋予x权限并验证,注:本机地址是192.168.1.10

(2)检查vsftpd服务是否运行,若运行则列出监听地址,PID号;否则输出提示“警告,vsftpd服务不可用1”。(插入linux系统安装光盘,安装一下vsftpd软件包)。

启动vsftpd服务(service vsftpd start),运行一下脚本,查看结果。

停止vsftpd服务(service vsftpd stop),运行一下脚本,查看结果。

步骤:编写脚本 vim chkftpd.sh 并且要安装vsftpd服务

赋予x权限并验证

3、多分支if语句

(1)根据输入的考试分数不同来区分优秀,合格,不合格三挡。

步骤:编写脚本 vim gradediv.sh

赋予x权限并执行

原文发布于微信公众号 - L宝宝聊IT(gh_b0e552aa80db)

原文发表时间:2018-01-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏python百例

120-打造vim为python IDE

pycharm之类的IDE很好,但是不能在无图形的终端下使用,另外它们是“重量级选手”。如果偶尔需要vim编辑python程序,能让vim支持python的语法...

1224
来自专栏Django Scrapy

Django安装及简单使用1.0

Django安装及简单使用1.0 代码都在github: URL:https://github.com/njxshr/codes/tree/master/t...

3238
来自专栏L宝宝聊IT

esxi网络中虚拟机的相关操作

1924
来自专栏左瞅瞅,右瞅瞅

DNS上线之路(六)——DNS管理

由于DNS 改变,服务器重启会获得原有的不可用的dns服务器信息。导致业务不可用。

1303
来自专栏Android干货

小程序问题集:保存失败:Error: ENOENT: no such file or directory, open

2022
来自专栏Python小屋

Python+django网页设计入门(3):使用SQLite数据库

初学者暂时不用理会其中的概念,一步一步照着做即可,出来效果之后再慢慢体会,有问题可以文末留言。

3185
来自专栏Android知识点总结

SpringBoot-03-之热部署

1164
来自专栏技术博文

/var/spool/clientmqueue目录下存在大量文件的原因及解决方法

问题现象:linux操作系统中的/var/spool/clientmqueue/目录下存在大量文件。原因分析: 系统中有用户开启了cron,而cron中执行的程...

2898
来自专栏java小白

java设计模式之适配器模式

1854
来自专栏懒人开发

hadoop(2):对应的环境

这里自己也没有对应的服务器 自己通过VBox(用 VMware也一样) 创建多个linux的虚拟机

1143

扫码关注云+社区