for循环批量写文件 shell_几个面试官常问的Shell脚本编写

作者:李振良
原文:http://lizhenliang.blog.51cto.com/7876557/1929044

116f6e62cd11a1d21c28809f52411412.gif注意事项

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

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

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

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

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

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

1 获取随机字符串或数字

获取随机8位字符串:

08ee8d242129aed5c2843e0a4bd35f2e.png

获取随机8位数字:

e5d4199a8ea50949c5f0279ba0f8d9f0.png

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

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

f14c0ee542b9a91539a5376747582a77.png

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

3 批量创建用户

8b18311d1b4f4296bced13543a34864e.png

4 检查软件包是否安装

0967d92459f00cf1ffa3fec4d62318e5.png

5 检查服务状态

ba81f3652eaedab65bbd3f897a9f90f2.png

6 检查主机存活状态

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

33a9873dc7127350b6bb6c285fe4f5ae.png

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

e2f51112612f707a8343a09a30d62749.png

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

5e7f4fbd57f3cf8e058301f59764f5d9.png

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

1)CPU

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

7beb53bb6d794946fe75a5d9fc45e8ce.png

2)内存  

745e300c609bb2dee6092dcad1b85d4f.png

3)硬盘

0269ec9175dd0eea083abc33d26d2a34.png

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

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

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

2f86eb859aaa9b2dccd71802e4228fba.png

9 检查网站可用性

1)检查URL可用性

eba921757dc640d25832189a1d804274.png

2)判断三次URL可用性

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

d55cba57d3ee440c18d1865006f29107.png

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

5b95981257fc106f3b9f9a6ba94e99e2.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值