一、比较两个数的大小

#!/bin/sh
read -p "Pls input two num:" a b
[ -z "$a" ] || [ -z "$b" ] && {
  echo "Pls input twn num agagin."
  exit 1
}
expr $a + 0 &>/dev/null
RETVAL1=$?
echo $RETVAL1
expr $b+0 &>/dev/null
RETVAL2=$?
echo $RETVAL2
test $RETVAL1 -eq 0 -a $RETVAL2 -eq 0 || {
        echo "Pls input two "num" ssagain."
        exit d2
}
[ $a -lt $b ] && {
        echo "$a < $b"
        exit 0
}
[ $a -gt $b ] && {
        echo "$a > $b"
        exit 0
}
[ $a -eq $b ] && {
        echo "$a = $b"
        exit 0
}
二、打印菜单
menu(){
 cat<<END
   1.[ install lamp ]
   2.[ install lnmp ]
   3.[ exit ]
   pls input the num you mant: 
END
}
menu
read -t 15 a
[ $a -eq 1 -o $a -eq 2 -o $a -eq 3 ]&&{
  echo " pls input right mum."
  exit
}
[ $a -eq 1 ]&&{
    echo "installing lamp"
    sleep 3
    echo "lamp is instlled"
   
    exit       
}
[ $a -eq 2 ]&&{
    echo "installing lnmp"
    sleep 3
    echo "lnmp is instlled"
    menu       
}
[ $a -eq 3 ]&&{
   exit
}
三、开发shell脚本实现如果/server/scripts下面存在if3.sh,就输出if3.sh到屏幕上,如果不存在就创建if3.sh脚本
#!/bin/sh
path=/server/scripts
file=if3.sh
if [ ! -d $path ]
  then
    mkdir -p $path
    echo "$path is not exist,already create it"
fi
if [ ! -f $path/$file ]
  then
    touch $path/$file
    echo "$path/$file is not exist,alreate create it"
    exit
fi
ls -l $path/$file
四、  开发脚本判断系统剩余内存大小,低于100M,报警    ,测试报警成功后,加入系统定时任务每3分钟执行一次检查
#!/bin/sh
used_men=`free -m|awk 'NR==3 {print $NF}'`
if [ $used_men -lt 800 ]
 then
   echo "men is not enough,$used_men"
   echo "men is nout enough,$used_men."|mail -s "men warning $(date +%F)" 825822293@qq.com
fi
  

五、监控mysql服务是否正常启动,如果未正常启动,就启动mysql服务

#!/bin/sh
port=`netstat -lntup|grep 3306|wc -l`
echo $port
if [ $port -ne 1 ]
 then
    /data/3306/mysql start
else
   echo "Mysql is running"

fi

  

 
 
 
              
 
 
 
 

四、Shell脚本高级编程实战第四部的更多相关文章

  1. 七、Shell脚本高级编程实战第七部

    一.写网络服务的系统启动脚本 利用case语句开发类似系统启动rsync服务的脚本 代码: #!/bin/sah. /etc/init.d/functionspidfile="/var/ru ...

  2. 六、Shell脚本高级编程实战第六部

    一.写一个start_nginx脚本,当启动.停止.重启时利用系统函数模拟实现系统脚本启动的特殊颜色效果 (用if实现) #!/bin/sh. /etc/init.d/functions if [ $ ...

  3. 八、Shell脚本高级编程实战第八部

    一.使用for循环在/oldboy目录下创建10个文件名为oldboy-x的文件 #!/bin/sh[ ! -d /oldboy ] && mkdir -p /oldbfor i in ...

  4. 一、Shell脚本高级编程实战第一部

    Shell脚本语言是实现linux系统自动化管理的重要且必要的工具,几乎每一个合格的linux系统管理员或者高级运维工程师都要熟练shell脚本语言的编写,只有这样才能提升工作效率,解决工作中的重复劳 ...

  5. 三、Shell脚本高级编程实战第三部

    保养好自己的发动机:身体的和心里的身体健康:打打球,跑跑步心里健康:多和大家接触,保持家人.朋友的良好关系一.$*和$@的区别   $*:获取shell的所有参数,将所有的参数视为单个字符串.   $ ...

  6. 二、Shell脚本高级编程实战第二部

    一.什么是变量? 变量就是一个固定的字符串替代更多更复杂的内容,当然内容里面可能还有变量.路径.字符串等等内容,最大的特点就是方便,更好开展工作 1.变量有环境变量(全局变量)和局部变量 环境变量就是 ...

  7. 九、Shell脚本高级编程实战第九部

    一.监控mysql主从同步是否异常,如果异常,发送短信给管理员 1)开发一个守护进程脚本每30秒实现检测一次. 2)如果错误号是:1158.1159.1008.1007.1062,请跳过 3)请使用数 ...

  8. 五、Shell脚本高级编程实战第五部

    一.条件表达式 在bash的各种流程控制结构中通常要进行各种测试,然后根据测试结果执行不同的操作.有时也和if结合,让我们方便判断. test: 1)判断文件是否存在:test -f  file 2) ...

  9. Shell脚本高级编程笔记一

     http://www.cnblogs.com/ygj0930/p/8184277.html 一:函数 1:创建函数 法一: function name{ commands } 法二: name() ...

随机推荐

  1. 每天一点点之vue框架开发 - 如何在一个页面调用另一个同级页面的方法

    使用场景: 页面分为header.home.footer三部分,需要在home中调用header中的方法,这两个没有相互引入 官方给出方法: api传送门 在项目中实现: 1.首先同一个vue实例来调 ...

  2. 每天一点点之vue框架开发 - vue 动态替换路由(地址栏)参数

    import merge from 'webpack-merge': // 修改原有参数 this.$router.push({ query:merge(this.$route.query,{'max ...

  3. 关于SI4432的问题简单讲解

    对于SX1278 和SI4432的对比性,下面为大家展示对比参数: 由此可以看出的SI4432虽然跟SX1278有部分地方不同,但是整体来说还是差别不大,各有各的长处和短处,性价比上个人还是觉得SI4 ...

  4. 9 ~ express ~ 用户注册

    一,/public/js/index.js //登陆 $login.find('button').on('click',()=>{ $.ajax({ type:'post', url:'/api ...

  5. 二十七、CI框架之自己写分页类并加载(写分页还是有难度,搞了一整天)

    一.我们写好自己的分页代码,防止library目录中,带构造函数 二.在模型中,添加2个函数,一个是查询数据的条数,第二个是取出数据库中的数据 三.在控制中,写入相应的代码,如下: 四.在界面中,写入 ...

  6. mysql初始化出现:FATAL ERROR: Neither host 'DB01' nor 'localhost' could be looked up with

    初始化时: FATAL ERROR: Neither host 'DB01' nor 'localhost' could be looked up with /application/mysql/bi ...

  7. 吴裕雄--天生自然TensorFlow2教程:合并与分割

    import tensorflow as tf # 6个班级的学生分数情况 a = tf.ones([4, 35, 8]) b = tf.ones([2, 35, 8]) c = tf.concat( ...

  8. 吴裕雄--天生自然Django框架开发笔记:Django Nginx+uwsgi 安装配置

    Django Nginx+uwsgi 安装配置 使用 python manage.py runserver 来运行服务器.这只适用测试环境中使用. 正式发布的服务,需要一个可以稳定而持续的服务器,比如 ...

  9. 7.CSRF攻击和文件上传漏洞攻击

    一.CSRF攻击及防范措施 1.概念 请求来源于其他网站,请求并不是用户的意愿,而是伪造的请求,诱导用户发起的请求 2.场景 攻击者盗用了你的身份,以你的名义发送恶意请求.CSRF能够做的事情包括:以 ...

  10. mysql数值类型总结及常用函数

    最近在学习下,总结一下mysql数值类型: mysql字符类型分: 1.整数类型: 字节                    值范围 INTERGER               1         ...