注意事项

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

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

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

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

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

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

1 获取随机字符串或数字

获取随机8位字符串:

v2-5690336cea842118d741ff71b13a8e59_hd.jpg

获取随机8位数字:

v2-6340835ce4b61f8d0039dddcd537e4b1_hd.jpg

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

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

v2-d9e438b5c555bd512f4935abeaa5e399_hd.jpg

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

3 批量创建用户

v2-3036c8d851450fde1ff5ed2152234fa9_hd.jpg

4 检查软件包是否安装

v2-568705b018dc0f2cec9157791ce93836_hd.jpg

5 检查服务状态

v2-213dc63611591a71d2375d2a288dffd0_hd.jpg

6 检查主机存活状态

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

v2-7f6945d4d6681a6992fb5f251ab7552f_hd.jpg

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

v2-b1f30545934945215b4e521c9ac14baa_hd.jpg

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

v2-3cd32769620d41272595f5dbd150a6bf_hd.jpg

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

1)CPU

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

v2-5ab0c4118c4464012af1fce46511176c_hd.jpg

2)内存

v2-bf2155392069b3e6dabf96f556747798_hd.jpg

3)硬盘

v2-c35f3374294d3506ef80bab6991c2491_hd.jpg

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

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

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

v2-093752bb5610022de5776accaecfa02c_hd.jpg

9 检查网站可用性

1)检查URL可用性

v2-424c6bc65f9fa23126285576432d52c2_hd.jpg

2)判断三次URL可用性

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

v2-78aee16c34c99088c4ae21aeab713e3e_hd.jpg

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

想学Linux?这里有全套Linux入门教程,加群485374463立刻领