寫一個腳本:
1、使用函數實現:
判斷一個用戶是否存在,用戶名通過參數傳遞而來;
如果存在,就顯示此用戶的shell和UID
如果不存在,就說此用戶不存在;
2、提示用戶輸入用戶名,而後將其傳遞給上面的函數;
3、判斷結束後不退出,而是提示用戶可繼續輸入其它用戶名,或輸入(quit)退出;
不廢話,代碼如下:
#!/bin/bash #Author: MOS #Script name: funUinfo.sh #Date & Time: 2012-10-09/21:06:02 #Version: 1.0.1 #Description: # #定義函數 Find_u(){ #判斷輸入值是否為空,如果為空,則函數結束,返回值1 [ -z $1 ] && return 1 #判斷用戶是否存在,存在則顯示要求,不存在,函數結束,返回值1 if id $1 &> /dev/null ;then echo "$1 UID is `id -u $1`" echo "$1 Shell is `grep "^$1:" /etc/passwd \ |cut -d':' -f7 `" else return 1 fi } #循環執行,以符合題目要求 while :;do read -p "Please input A username[quit to exit]: " User if [ $User = quit ];then exit 0 else Find_u $User Res=$? [ $Res -eq 1 ] && echo "No such $User." fi done
URL:http://www.bianceng.cn/OS/Linux/201410/45680.htm