Я новичок здесь.
Я пишу сценарий, который я хочу видеть на нескольких машинах, если пользователь существует и его статус. Например, если я использую passwd -S.
, я начинаю писать следующий скрипт bash. Я застрял на этом этапе.
Я хочу показать статус пользователя, заблокирован или разблокирован. Я не могу закончить sh информацией о статусе пользователя.
#!/bin/bash
if [ $# -lt 2 ]; then
echo "usage: $0 <username> <serverfile>"
exit 1
fi
USER=$1
SERVERFILE=$2
for SERVER in `cat ${SERVERFILE}`
do
if [ -n "`ping -c1 ${SERVER} 2> /dev/null | grep icmp_seq`" ]; then
ISUSER=`ssh -i /home/centos/key.pem user@${SERVER} getent passwd ${USER}`
if [ $? -eq 0 ];
then
echo -e "User ${USER} exist on ${SERVER} [OK]"
else
echo -e "User ${USER} does not exist on ${SERVER} [FAILED]"
fi
else
echo "${SERVER} is not reachable"
fi
done
Может ли кто-нибудь иметь представление о том, как я могу получить такой результат:
«Пользователь root существует и статус разблокирован»
Заранее спасибо.