linux运维脚本编写

发布于:2024-08-02 ⋅ 阅读:(99) ⋅ 点赞:(0)

目录

步骤1 系统基本信息的检查

步骤2 文件系统和磁盘信息的检查

步骤3 内存、cpu、进程信息的检查

  1、内存信息检查

 2、cpu信息检查

3、进程信息检查

步骤4 其他脚本


正文部分✌

步骤1 系统基本信息的检查


巡检脚本

步骤2 文件系统和磁盘信息的检查

 具体实现的shell脚本如下:

#!/bin/bash

df -TPh | grep -E '^Filesystem|tmpfs|/de'|awk '{ print $6 " " $1 }'| while read output; do usep=$(echo $output | awk '{print $1}'|cut -d '%' -f 1) partition=$(echo $output | awk '{ print $2 }')

if [ $usep -ge 50 ];

then echo "Running out of space $partition ($usep%) on $(date +%Y-%m-%d)"

fi

done

exit


步骤3 内存、cpu、进程信息的检查


  1、内存信息检查

#!/bin/bash
#系统分配的区总量
mem_total=` free -m|awk 'NR==2'|awk '{print$2}'`
#当前剩余的大小
mem_free=` free -m|awk 'NR==2'|awk '{print$4}'`
#当前已使用的used大小
mem_used=`free -m|grep Mem|awk '{print$3}'`
mem_per=0`echo "scale=2;$mem_used/$mem_total"|bc`

echo “$mem_per”

 2、cpu信息检查

 top -bn1 | grep load | awk '{printf "%.2f%%\t\t\n", $(NF-2)}'

3、进程信息检查

shell脚本查看linux系统cpu和内存占用率排行前十的进程     
 

#!/bin/bash
echo "CPU占用率前十的进程如下"
ps -eo user,pid,pcpu,pmem,args --sort=-pcpu | head -n 10
echo "内存占用率前十的进程如下"
ps -eo user,pid,pcpu,pmem,args --sort=-pmem | head -n 10

运行结果:

步骤4 其他脚本

测试 192.168.30.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机

#!/bin/bash

for i in {1..254}

do

# 每隔0.5秒ping一次,一共ping2次,并以1毫秒为单位设置ping的超时时间

ping -c 2 -i 0.5 -W 1 192.168.30.$i &>/dev/null

if [ $? -eq 0 ];then

echo "192.168.30.$i is up"

else

echo "192.168.30.$i is down"

fi

done

1)执行脚本后,输入想去的同学的英文名字全拼,产生随机数(01~99之间的数字),数字越大就越有机会去参加项目实践,对于前面已经抓到的数字,下次不能再出现。
2)输入第一个名字之后,屏幕输出信息,并将名字和数字记录到文件里,程序不能退出,继续等待别的学生输入。


网站公告

今日签到

点亮在社区的每一天
去签到