bash
#!/bin/bash
# 获取操作系统信息
os_info=$(hostnamectl | grep 'Operating System' | awk -F ':' '{print $NF}')
# 检查是否包含"centos"
if echo "$os_info" | grep -E '*centos*' > /dev/null; then
# 打印主机IP
echo "主机IP:$(hostname -I | awk '{print $1}')"
fi
编辑hosts文件,保存待查看的主机列表
bash
[sc]
10.1.1.[1:100] ansible_ssh_user=主机用户 ansible_ssh_pass=主机用户密码
用ansible进行传输脚本和执行
bash
传输到各台主机
ansible -i ./hosts all -m copy -a "src=/etc/ansible/scripts/getOS.sh dest=/tmp"
执行脚本
ansible -i ./hosts all -m shell -a "sh /tmp/getOS.sh" >all.txt
cat all.txt|grep "主机"