微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

服务器常用shell巡检脚本

 

1,使用user.txt 文件中的员工名单,在系统中自动创建对应的账号并配置密码

# cat create.sh 
#!/bin/bash
for i in 'cat user.txt'
do
 useradd $i
 echo "123456" | passwd --stdin $i
done

2,编写批量修改扩展名的脚本,如批量将txt文件修改程doc文件

# cat update_txt_doc.sh 
#!/bin/bash
for i in "ls *.$1"
do 
	mv $i ${i%.*}$2
done

3,使用expect 工具 自动交互密码远程其他主机安装httpd 软件:

# cat expect_ssh_httpd.sh 
#!/bin/bash
expect <<eof
spawn ssh 192.168.4.254
expect "password" {send "密码\r"}
expect "#" {send "yum –y install httpd\r"}
expect "#" {send "exit\r"}
eof

4, 使用死循环实时显示 eth0网卡发送的数据包流量:

# cat while_eth0.sh 
#!/bin/bash
while:
do
 ifconfig | grep "rx pack"
 ifconfig | grep "tx pack"
done

5,判断当前主机的cpu生产商,其信息在/proc/cpuinfo 文件vendor id 一行中。如果其生产商为Genuinelntel ,就显示其为intel公司;否则,就显示为AMD公司:


# cat if_cpu.sh 
#!/bin/bash
grep "genuineintel" /proc/cpuinfo &>/dev/null
if [ $? –eq 0 ];then
echo "intel cpu"
else
 echo "amd cpu"
fi

6,编写脚本测试 192.168.1.0/24 整个网段中哪些主机处于开机状态,哪些主机处于关机状态:

# cat if_ping_host_ip.sh
#!/bin/bash
for i in {1..254}
do
 ping 192.168.4.$i &>/dev/null
 if [ $? –eq 0 ];then
 echo "192.168.4.$i is up"
 else
 echo "192.168.4.$i is down"
done

 

 

如何将标准输出错误输出重定向一个位置,如何将标准输出重定向到/dev/null? 答案: 命令 &> 文件名 (可以将命令的标准输出错误输出一起重定向 命令 > /dev/null(可以将命令的标准输出重定向到/dev/null)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐