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 条评论
登录 后参与评论

相关文章

来自专栏JAVA同学会

nginx的基础应用

今天我们将介绍一些nginx的简单应用,启动、停止nginx,重载nginx的配置,nginx配置文件的格式,如何配置nginx服务静态资源,如何配置nginx...

702
来自专栏北京马哥教育

同时管理多台服务器的expect脚本

最近通过exploring expect书籍,简单学了下expect脚本语言,这个脚本语言是tcl语言的扩展,用来解决一些工具无法自动交互的问题,如ssh登录时...

2745
来自专栏python3

Nginx日志指定时间段查询

查看指定时间的日志  19:00~20:00 cat access.log |awk -F "[ |/]"  '$6>="2017:19:00:00"&&$6<...

752
来自专栏Aloys的开发之路

Xshell利用登录脚本从服务器登录到另外一个服务器

Xshell是一款公认的优秀SSH连接管理软件,被广泛用于管理Linux服务器或VPS。通过脚本设置,可以实现从这个服务器登录到另外一个服务器。 打开Xshel...

2928
来自专栏吴伟祥

java web项目修改favicon.ico图标的方式

修改tomcat小猫图标,设置项目的favicon图标,方式有两种:全局方式和局部方式

874
来自专栏容器云生态

企业级Docker Registry开源工具Harbor的介绍以及使用指南

#Harbor 的简介以及基本架构 Harbor简介 基本架构 Harbor安装和配置指导 Harbor 可以使用以下三种方式进行安装部署: 在线安装: 使用...

2296
来自专栏赵俊的Java专栏

Git 常用命令

1555
来自专栏Linux驱动

makefile初步制作,arm-linux- (gcc/ld/objcopy/objdump)详解

在linux中输入vi Makefile 来实现创建Makefile文件 注意:命令行前必须加TAB键 例如:将两个文件led.c和crt0.S汇编文件,制作...

1786
来自专栏静下来

windows 2003 iis服务器设置301重定向

最近在给公司之前的网站做调整,我发现网站没有301重定向。 系统是Windows Server 2003的,IIS6.0服务器。 第一步:首先得有2个站点 ...

2805
来自专栏浪淘沙

Git 学习总结3

17.多人协作 git remote //查看远程库的信息 git remote -v //显示更详细的信息 (1)推送分支...

893

扫码关注云+社区