您的位置:首页 > 运维架构 > Shell

shell脚本应用《十》查看多个系统CPU,指定的进程CPU,主备机,内存使用情况

2019-09-14 00:59 1411 查看

需求:查看多台机器看多个系统CPU,指定的进程CPU,主备机状态,内存使用情况;并在一台机器上显示;

第一:先设置ssh免密码登录

ssh-keygen -t rsa P'' -f ~/.ssh/id_rsa 不提示直接生成秘钥
ssh-copy-id -i ~/.ssh/id_rsa.pub root@ip

第二:查询脚本,分别拷贝到各个机器上

scp /usr/local/src/cpu_men.sh root@ip: /usr/local/src/
脚本内容
#!/bin/bash
cpu=

top -bn1|awk -F "[,:%]" '/Cpu/{print $2}'

men_total=
free -m | grep Mem|awk '{print $2}'

men_used=
free -m | grep Mem|awk '{print $3}'

men_av=
awk 'BEGIN{printf"%.0f\n",('${men_used}'/'${men_total}')*100}'

num=
ifconfig|awk '/eth.:./{print $1}'|wc -l

syseth="主"
[ ${num} -eq 0 ] && syseth="备"
IP=
ifconfig|awk -F"[: ]+" 'NR==2{print $4}'

pronum=
ps aux|grep tdci|grep -Ev "$$|grep"|awk '{print $3}'|wc -l

procpu=
ps aux|grep tdci|grep -Ev "$$|grep"|awk '{print $3}'|xargs

#awk 'BEGIN{printf"%-20s%-10s%-10s%-10s%-20s\n","IP------------------","status---------","CPU%------","men%------","procpu%-----"}'
awk 'BEGIN{printf"%-20s%-13s%-12s%-10s","'${IP}'","'$syseth'","'"${cpu}"'",'"${men_av}"'}'
echo "$procpu (${pronum} "tdic")"

第三:总体查询并在一台主机显示脚本:ssh_exec.sh

[blockquote] [p]#!/bin/bash
awk 'BEGIN{printf"%-20s%-10s%-10s%-10s%-20s\n","IP------------------","status---------","CPU%------","men%------","procpu%-----"}'[url=https://blog.51cto.com/14294148/mailto:br/>arry=(
192.168.50.5
192.168.50.6
192.168.50.9
)
for((i=0;i<${#arry[@]};i++))arry=(
192.168.50.5
192.168.50.6
192.168.50.9
)
for((i=0;i<${#arry[@]};i++))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: