COLT_CMDB_linux_userInfo_20250508.sh修复历史脚本输出指标信息中userName与输出信息不一致问题

bash 复制代码
#!/bin/bash
#IT_BEGIN
#IT_TYPE=3
#IT SYSTEM_LINUX_AGENTUSERDISCOVER|discovery.user[disc]
#原型指标
#IT_RULE SYSTEM_LINUX_AGENTUSERGROUPID|groupId[{#USERNAME}]
#IT_RULE SYSTEM_LINUX_AGENTUSERHOME|userHome[{#USERNAME}]
#IT_RULE SYSTEM_LINUX_AGENTUSERNAME|userName[{#USERNAME}]
#IT_RULE SYSTEM_LINUX_AGENTUSERID|userId[{#USERNAME}]
#IT_RULE SYSTEM_LINUX_AGENTUSERIP|ipAddress[{#USERNAME}]
#IT_RULE SYSTEM_LINUX_AGENTUSERPATH|shell[{#USERNAME}]
#IT_END
if [ "$1" == "disc" ];then
    users=(`compgen -u| tr '\n' ' '`)
    for user in ${users[@]}
       do
           echo "{#USERNAME}="$user
      done
      exit 0
fi

#原型指标采集
shname=`basename $0`
ATTR="_X(g=$shname,p=CMDB,t=script,f=0)"
ip=`ifconfig -a | grep inet |grep -v 127.0.0.1 |grep -v inet6 |awk '{print $2}' |cut -d ':' -f 2 | tr "\n" "," |sed 's/.$//g'`
#USERNAME=$1
#多指标输出开始
echo COL_DETAIL_START:
cat  /etc/passwd | while read line
do
        USERNAME=`echo $line | cut -d':' -f 1`
        userName=`echo $line | cut -d':' -f 1`
        userId=`echo $line | cut -d':' -f 3`
        groupId=`echo $line | cut -d':' -f 4`
        userHome=`echo $line | cut -d':' -f 6`
        shell=`echo $line | cut -d':' -f 7`
        
        echo "ipAddress[$ATTR,$USERNAME]|+|$ip"
        echo "userName[$ATTR,$USERNAME]|+|$userName"
        echo "userId[$ATTR,$USERNAME]|+|$userId"
        echo "groupId[$ATTR,$USERNAME]|+|$groupId"
        echo "userHome[$ATTR,$USERNAME]|+|$userHome"
        echo "shell[$ATTR,$USERNAME]|+|$shell"
done
#多指标输出结束
echo COL_DETAIL_END:

10.14.1.69服务器执行脚本如下:

bash 复制代码
[root@localhost ~]# sh COLT_CMDB_linux_userInfo_20250508.sh 
COL_DETAIL_START:
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|root
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|0
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|0
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|/root
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),root]|+|/bin/bash
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|bin
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|1
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|1
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|/bin
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),bin]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|daemon
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|2
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|2
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|/sbin
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),daemon]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|adm
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|3
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|4
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|/var/adm
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),adm]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|lp
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|4
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|7
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|/var/spool/lpd
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),lp]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|sync
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|5
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|0
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|/sbin
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sync]|+|/bin/sync
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|shutdown
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|6
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|0
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|/sbin
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),shutdown]|+|/sbin/shutdown
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|halt
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|7
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|0
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|/sbin
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),halt]|+|/sbin/halt
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|mail
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|8
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|12
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|/var/spool/mail
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),mail]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|operator
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|11
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|0
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|/root
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),operator]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|games
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|12
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|100
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|/usr/games
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),games]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|ftp
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|14
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|50
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|/var/ftp
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),ftp]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|nobody
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|99
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|99
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|/
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),nobody]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|systemd-network
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|192
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|192
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|/
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),systemd-network]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|dbus
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|81
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|81
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|/
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),dbus]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|polkitd
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|999
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|998
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|/
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),polkitd]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|sshd
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|74
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|74
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|/var/empty/sshd
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),sshd]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|postfix
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|89
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|89
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|/var/spool/postfix
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),postfix]|+|/sbin/nologin
ipAddress[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|10.14.1.69
userName[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|chrony
userId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|998
groupId[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|996
userHome[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|/var/lib/chrony
shell[_X(g=COLT_CMDB_linux_userInfo_20250508.sh,p=CMDB,t=script,f=0),chrony]|+|/sbin/nologin
COL_DETAIL_END:
相关推荐
平平无奇。。。12 分钟前
Mysql库的操作和表的操作
linux·数据库·mysql
一张假钞37 分钟前
Linux 下 ChromeDriver 安装
linux·运维·服务器
shark-chili40 分钟前
Java并发编程哲学系列汇总
linux·运维·服务器·操作系统
weixin_3077791344 分钟前
Neo4j 备份与恢复:原理、技术与最佳实践
运维·数据库·neo4j
qq_243050791 小时前
rtpmixsound:实现音频混音攻击!全参数详细教程!Kali Linux教程!
linux·web安全·网络安全·黑客·渗透测试·voip·kali linux
背太阳的牧羊人1 小时前
docker 中 什么是「卷」?(Volume)
运维·docker·容器
Dxy12393102161 小时前
DrissionPage 异常处理实战指南:构建稳健的网页自动化防线
运维·爬虫·python·自动化·drissionpage
TDengine (老段)1 小时前
TDengine 运维——巡检工具(安装前预配置)
大数据·运维·数据库·时序数据库·iot·tdengine·涛思数据
不爱说话郭德纲1 小时前
你需要来自XXX的权限才能对此文件夹进行更改?看我三步暴删
linux·windows·操作系统
Mikhail_G2 小时前
Python应用continue关键字初解
大数据·运维·开发语言·python·数据分析