Advertisement
Guest User

Untitled

a guest
Oct 30th, 2014
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.12 KB | None | 0 0
  1. if ( $#argv > 2 ) then
  2.     echo "Error: 'Too much arguments given'" > /dev/stderr
  3.     echo "Error: 'For help use -h switch'" > /dev/stderr
  4.     exit
  5. endif
  6.  
  7. set nonomatch=1
  8. set group = 0
  9.  
  10. #get arguments
  11. switch ($1)
  12. case -h:
  13.     echo 'zadanie1.csh (C) Martin Kotucek'
  14.     echo ''
  15.     echo 'Usage: zadanie1.csh [-h] [-g <group>]'
  16.     echo ' -h: Prints out help.'
  17.     echo ' -g <group>: Prints out only the members of the <group>.'
  18.     exit
  19.   breaksw
  20. case -g:
  21.     if(`echo $2 | egrep ^"[0-9]+"$` < 1) then
  22.         set group = $2
  23.     else
  24.         echo "Error: 'Bad group'" > /dev/stderr
  25.         exit
  26.     endif
  27.   breaksw
  28. case "":
  29.   breaksw
  30. default:
  31.     echo "Error: 'Bad argument'" > /dev/stderr
  32.     exit
  33.   breaksw    
  34. endsw
  35.  
  36. #code
  37. set readf=`cat /etc/passwd.2001 | tr " " "_" | tr "\n" " "`
  38. foreach line ($readf)
  39.     set usrname = `echo $line | cut -d ":" -f1`
  40.     set occur = `last | grep -c "$usrname"`
  41.  
  42.     if ( $occur < 1 ) then
  43.         set realnam = `echo $line | cut -d ":" -f5 | tr -d "," | tr "_" " "`
  44.         set usergrp = `echo $line | cut -d ":" -f3`
  45.         if( $group == 0 || $group == $usergrp ) then
  46.             echo "Output: '$usrname $usergrp $realnam'"
  47.         endif
  48.     endif  
  49. end
  50. exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement