skraps

users.sh

Feb 22nd, 2011
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.22 KB | None | 0 0
  1. #!/bin/bash
  2. function last10()
  3. {
  4.  
  5. USERS=`last -n 30 | awk '{ print $1 }'`;
  6. count=0;
  7.  
  8. for i in $USERS; do
  9.  
  10.         if [ $i != 'reboot' ] && [ $i != 'wtmp' ]; then
  11.  
  12.                   newUSERS="${i} ${newUSERS}"
  13.  
  14.         fi;
  15.  
  16. done
  17.  
  18. echo "=Last 10 Users================================";
  19. echo "-username:GID -- Groups -- Last Login";
  20.  
  21. for i in $newUSERS; do
  22.  
  23.         USERGID=`id -u $i`;
  24.         GROUPS=`groups $i`;
  25.         LASTLOG=`lastlog | grep $i | cut -c44-80`
  26.         echo "${i}:${USERGID} -- $GROUPS -- $LASTLOG";  
  27.         count=`expr $count + 1`;
  28.         if [ $count = '10' ];then
  29.                 break;
  30.         fi;
  31. done;
  32.  
  33. }
  34. function curlog() {
  35.  
  36. USERS=`who | awk '{ print $1 }'`;
  37. count=0;
  38.  
  39. echo "=Current Users================================";
  40. echo "-username:GID -- Groups -- Last Login";
  41.  
  42. for i in $USERS; do
  43.  
  44.         USERGID=`id -u $i`;
  45.         GROUPS=`groups $i`;
  46.         LASTLOG=`lastlog | grep $i | cut -c44-80`
  47.         echo "${i}:${USERGID} -- $GROUPS -- $LASTLOG";  
  48.         count=`expr $count + 1`;
  49.         if [ $count = '10' ];then
  50.                 break;
  51.         fi;
  52. done;
  53.  
  54. }
  55.  
  56. case $1 in
  57.  
  58.         l)
  59.             last10;
  60.         ;;
  61.         *)
  62.             curlog
  63.         ;;
  64. esac;
Add Comment
Please, Sign In to add comment