利用shell腳本做一個用戶登錄系統


效果圖如下:

 

 

 

#!/bin/bash
#

while true
do
cat << EOF
//======================\\\\
| 用戶登錄系統 |
--------------------------
| 1、創建用戶 |
| 2、刪除用戶 |
| 3、鎖定用戶 |
| 4、解鎖用戶 |
| 5、查看用戶 |
| 6、退出腳本 |
--------------------------
EOF

read -p "請輸入你的操作選擇:" num
#輸入為1時的判斷
if [ "$num" -eq 1 ]
then
read -p "請輸入你的用戶名:" user
if [ -d /home/$user ]
then
echo "***********該賬號已存在,無需創建*************"
else
cat /etc/shadow | awk -F'[:]' '{print $1}' | grep -w $user &> /dev/null
if [ $? -eq 0 ]
then
echo "***********該賬號已存在,無需創建*************"
else
useradd $user
echo "***********成功創建用戶$user***************"
fi
fi
fi
#輸入為2時的判斷
if [ "$num" -eq 2 ]
then
read -p "請輸入你的用戶名:" user
if [ -d /home/$user ]
then
userdel -r $user
echo "******************成功刪除用戶$user****************"
else
echo "****************無該賬號,刪除失敗*******************"
fi
fi

#輸入為3時
if [ "$num" -eq 3 ]
then
read -p "請輸入你的用戶名:" user
l=$(cat /etc/shadow |grep $user | awk -F'[:]' '/!!/{print $2}' | grep -o '!!')
if [ -d /home/$user ]
then
if [ "$l" != !! ]
then
passwd -l $user &> /dev/null
echo "*****************成功鎖定用戶$user****************"
else
echo "***************該賬號已鎖定,無需再次鎖定*******************"
fi
else
echo "**************無該賬號,需創建************"
fi

fi

#輸入為4時

if [ "$num" -eq 4 ]
then
read -p "請輸入你的用戶名:" user
l=$(cat /etc/shadow |grep -w $user | awk -F'[:]' '/!!/{print $2}' | grep -o '!!')
p=$(cat /etc/shadow |grep -w $user | awk -F'[:]' '{print $2}' | grep -o '^!')
if [ -d /home/$user ]
then
if [ "$l" = !! ]
then
passwd -u -f $user &> /dev/null
echo "**********************成功解鎖用戶$user************************"
elif [ "$p" = ! ]
then
usermod -U $user &> /dev/null
else
echo "*****************該用戶未鎖定,無需解鎖*****************"
fi
else
echo "***********************無該賬號,需創建**********************"
fi
fi

#輸入為5時

if [ "$num" -eq 5 ]
then
read -p "請輸入你的用戶名:" user
if [ -d /home/$user ]
then
echo "******************用 戶 $user 信 息 如 下***************************"
finger $user
else
echo "***********************無該賬號,需創建**********************"
fi
fi

#輸入為6時

if [ "$num" -eq 6 ]
then
echo "**************************歡迎使用,下次再見**************************"
exit
fi
done


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM