9个实战及面试常用Shell脚本编写

640?wx_fmt=gif

640?wx_fmt=jpeg

Linux编程 点击右侧关注,免费入门到精通! 640?wx_fmt=jpeg


作者丨李振良

http://lizhenliang.blog.51cto.com/7876557/1929044


640?wx_fmt=gif注意事项


1)开头加解释器:#!/bin/bash


2)语法缩进,使用四个空格;多加注释说明。


3)命名建议规则:变量名大写、局部变量小写,函数名小写,名字体现出实际作用。


4)默认变量是全局的,在函数中变量local指定为局部变量,避免污染其他作用域。


5)有两个命令能帮助我调试脚本:set -e 遇到执行非0时退出脚本,set-x 打印执行过程。  


6)写脚本一定先测试再到生产上。


1 获取随机字符串或数字


获取随机8位字符串:


640?wx_fmt=png


获取随机8位数字:


9个实战及面试常用Shell脚本编写_第1张图片


cksum:打印CRC效验和统计字节


2 定义一个颜色输出字符串函数


9个实战及面试常用Shell脚本编写_第2张图片


function关键字定义一个函数,可加或不加。


3 批量创建用户


9个实战及面试常用Shell脚本编写_第3张图片


4 检查软件包是否安装


640?wx_fmt=png


5 检查服务状态


640?wx_fmt=png


6 检查主机存活状态


方法1: 将错误IP放到数组里面判断是否ping失败三次


9个实战及面试常用Shell脚本编写_第4张图片


方法2: 将错误次数放到FAIL_COUNT变量里面判断是否ping失败三次


9个实战及面试常用Shell脚本编写_第5张图片


方法3: 利用for循环将ping通就跳出循环继续,如果不跳出就会走到打印ping失败


9个实战及面试常用Shell脚本编写_第6张图片


7 监控CPU、内存和硬盘利用率


1)CPU


借助vmstat工具来分析CPU统计信息。


9个实战及面试常用Shell脚本编写_第7张图片


2)内存  

   

9个实战及面试常用Shell脚本编写_第8张图片


3)硬盘


9个实战及面试常用Shell脚本编写_第9张图片


8 批量主机磁盘利用率监控


前提监控端和被监控端SSH免交互登录或者密钥登录。


写一个配置文件保存被监控主机SSH连接信息,文件内容格式:IP User Port


9个实战及面试常用Shell脚本编写_第10张图片


9 检查网站可用性


1)检查URL可用性


9个实战及面试常用Shell脚本编写_第11张图片


2)判断三次URL可用性


思路与上面检查主机存活状态一样。


9个实战及面试常用Shell脚本编写_第12张图片


本章写的Shell脚本例子都比较实用,在面试题中也经常出现,希望大家参考着多动手写写,不要复制粘贴就拿来跑,这样是学不会的!


 推荐↓↓↓ 

640?wx_fmt=png

?16个技术公众号】都在这里!

涵盖:程序员大咖、源码共读、程序员共读、数据结构与算法、黑客技术和网络安全、大数据科技、编程前端、Java、Python、Web编程开发、Android、iOS开发、Linux、数据库研发、幽默程序员等。

640?wx_fmt=png万水千山总是情,点个 “ 好看” 行不行

你可能感兴趣的:(9个实战及面试常用Shell脚本编写)