10 个实战及面试常用 Shell 脚本编写
2018-11-19 本文已影响34人
Java技术剑
注意事项
1)开头加解释器:#!/bin/bash
2)语法缩进,使用四个空格;多加注释说明。
3)命名建议规则:变量名大写、局部变量小写,函数名小写,名字体现出实际作用。
4)默认变量是全局的,在函数中变量local指定为局部变量,避免污染其他作用域。
5)有两个命令能帮助我调试脚本:set -e 遇到执行非0时退出脚本,set-x 打印执行过程。
6)写脚本一定先测试再到生产上。
1 获取随机字符串或数字
获取随机8位字符串:
获取随机8位数字:
cksum:打印CRC效验和统计字节
2 定义一个颜色输出字符串函数
function关键字定义一个函数,可加或不加。
3 批量创建用户
4 检查软件包是否安装
5 检查服务状态
6 检查主机存活状态
方法1:将错误IP放到数组里面判断是否ping失败三次
方法2:将错误次数放到FAIL_COUNT变量里面判断是否ping失败三次
方法3:利用for循环将ping通就跳出循环继续,如果不跳出就会走到打印ping失败
7 监控CPU、内存和硬盘利用率
1)CPU
借助vmstat工具来分析CPU统计信息。
2)内存
3)硬盘
8 批量主机磁盘利用率监控
前提监控端和被监控端SSH免交互登录或者密钥登录。
写一个配置文件保存被监控主机SSH连接信息,文件内容格式:IP User Port
9 检查网站可用性
1)检查URL可用性
使用方法:check_url www.baidu.com
2)判断三次URL可用性
思路与上面检查主机存活状态一样。
10 检查MySQL主从同步状态
本章写的Shell脚本例子都比较实用,在面试题中也经常出现,希望大家参考着多动手写写,不要复制粘贴就拿来跑,这样是学不会的!