home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / groups < prev    next >
Text File  |  2003-07-24  |  2KB  |  63 lines

  1. #!/bin/sh
  2. # groups -- print the groups a user is in
  3. # Copyright (C) 1991, 1997, 2000, 2002 Free Software Foundation, Inc.
  4.  
  5. # This program is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 2, or (at your option)
  8. # any later version.
  9.  
  10. # This program is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13. # GNU General Public License for more details.
  14.  
  15. # You should have received a copy of the GNU General Public License
  16. # along with this program; if not, write to the Free Software Foundation,
  17. # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
  18.  
  19. # Written by David MacKenzie <djm@gnu.ai.mit.edu>.
  20.  
  21. # Make sure we get GNU id, if possible; also allow
  22. # it to be somewhere else in PATH if not installed yet.
  23. PATH=/usr/bin:$PATH
  24.  
  25. usage="Usage: $0 [OPTION]... [USERNAME]...
  26.  
  27.   --help      display this help and exit
  28.   --version   output version information and exit
  29.  
  30. Same as id -Gn.  If no USERNAME, use current process.
  31.  
  32. Report bugs to <bug-sh-utils@gnu.org>."
  33.  
  34. fail=0
  35. case $# in
  36.   1 )
  37.     case "z${1}" in
  38.       z--help )
  39.      echo "$usage" || fail=1; exit $fail;;
  40.       z--version )
  41.      echo "groups (GNU sh-utils) 2.0.15" || fail=1; exit $fail;;
  42.       * ) ;;
  43.     esac
  44.     ;;
  45.   * ) ;;
  46. esac
  47.  
  48. if [ $# -eq 0 ]; then
  49.   id -Gn
  50.   fail=$?
  51. else
  52.   for name in "$@"; do
  53.     groups=`id -Gn -- $name`
  54.     status=$?
  55.     if test $status = 0; then
  56.       echo $name : $groups
  57.     else
  58.       fail=$status
  59.     fi
  60.   done
  61. fi
  62. exit $fail
  63.