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:
相关推荐
dancing9994 分钟前
Golang的linux运行环境的安装与配置
linux·服务器·golang
Johny_Zhao35 分钟前
堆叠、MLAG、VPC、VSS 技术对比及架构建议
linux·网络·人工智能·python·网络安全·ai·信息安全·云计算·cisco·等保测评·huawei·系统运维
YJII41 分钟前
Docker封装深度学习模型
运维·docker·容器
THe CHallEnge of THe BrAve1 小时前
Linux-openeuler更换yum镜像源
linux·运维·服务器
泷羽Sec-pp2 小时前
DC-9靶机通关笔记
linux·运维·网络·笔记·docker·容器
时序数据说2 小时前
通过Linux系统服务管理IoTDB集群的高效方法
大数据·linux·运维·数据库·开源·时序数据库·iotdb
大数据追光猿2 小时前
【大数据】服务器上部署Apache Paimon
大数据·服务器·docker·架构·apache
大唐锦绣3 小时前
Docker下Gogs设置Webhook推送Spug,踩坑记录与解决方案
运维·docker·容器·gogs
SamHou03 小时前
从 UEFI 启动到双系统——记一次双系统 Linux 分区迁移
linux·windows·grub
阳光男孩啊3 小时前
五、Linux系统之vim编辑器
linux·运维·编辑器·vim