shell编程之函数简单使用


写一个shell脚本:

1、使用函数实现:
判断一个用户是否存在,用户名通过参数传递而来;
如果存在,就显示此用户的shell和UID
如果不存在,就说此用户不存在;
2、提示用户输入用户名,而后将其传递给上面的函数;
3、判断结束后不退出,而是提示用户可继续输入其它用户名,或输入(quit)退出;

不废话,代码如下:

  1. #!/bin/bash  
  2. #Author: MOS  
  3. #Script name: funUinfo.sh  
  4. #Date & Time: 2012-10-09/21:06:02  
  5. #Version: 1.0.1  
  6. #Description:  
  7. #  
  8. #定义函数  
  9. Find_u(){  
  10. #判断输入值是否为空,如果为空,则函数结束,返回值1  
  11. [ -z $1 ] && return 1  
  12. #判断用户是否存在,存在则显示要求,不存在,函数结束,返回值1  
  13. if id $1 &> /dev/null ;then 
  14.     echo "$1 UID is `id -u $1`" 
  15.     echo "$1 Shell is `grep "^$1:" /etc/passwd \  
  16.     |cut -d':' -f7 `"  
  17. else 
  18.     return 1  
  19. fi  
  20. }  
  21. #循环执行,以符合题目要求  
  22. while :;do  
  23. read -p "Please input A username[quit to exit]: " User 
  24.     if [ $User = quit ];then 
  25.         exit 0  
  26.     else 
  27.         Find_u $User 
  28.         Res=$?  
  29.         [ $Res -eq 1 ] && echo "No such $User." 
  30.     fi  
  31. done  

相关内容