显示系统上所有默认shell为bash的用户和默认Shell为/sbin/nologin的用户,并统计各类shell下的用户数量,并显示下面的用户
#!/bin/bash
#
#获得用户shell为/bin/bash的用户数量
bashcount=`grep -c 'bash$' /etc/passwd`
#获得用户shell为/bin/nologin的用户数量
nologincount=`grep -c 'nologin$' /etc/passwd`
#获取用户shell为/bin/bash的用户列表
bashusers=`grep 'bash$' /etc/passwd | cut -d: -f1`
#获取用户shell为/bin/nologin的用户列表
nologinusers=`grep 'nologin$' /etc/passwd | cut -d: -f1`
#循环生成bash用户列表,用户通过,分隔
for iuser in $bashusers;
do
#-z判断字符串是否为空
if [ -z $bashusersformat ];then
bashusersformat=$iuser
else
bashusersformat="$bashusersformat,$iuser"
fi
done
#循环生成nologin用户列表,用户通过,分隔
for iuser in $nologinusers;
do
if [ -z $nologinusersformat ];then
nologinusersformat=$iuser
else
nologinusersformat="$nologinusersformat,$iuser"
fi
done
echo "Bash Users Count:$bashcount,they are $bashusersformat"
echo "nologin Users Count:$nologincount,they are $nologinusersformat"