Script de novato.....

Iniciado por -=[ §ÂßÂÑÐØ ]=-, 15 Diciembre 2011, 10:47 AM

0 Miembros y 1 Visitante están viendo este tema.

-=[ §ÂßÂÑÐØ ]=-

Buenas...estoy empezando con shell bash y no me aclaro en este script...exactamente no se como listar usuarios primarios y secundarios...y por lo tanto no se bien como empezar mi ejercicio....

Antes de nada muchisimas gracias de antemano...


Crear un script que tenga el siguiente comportamiento:
•   Muestra por pantalla y de forma recurrente un menú con cuatro opciones posibles:
•   a) Mostrar usuarios de grupo (primarios): Seleccionada esta opción, el script debe pedir el nombre de un grupo e informar por pantalla de los nombres de los usuarios que pertenecen a ese grupo como grupo primario.
•   b) Mostrar usuarios de grupo (secundarios): Seleccionada esta opción, el script debe pedir el nombre de un grupo e informar por pantalla de los nombres de los usuarios que pertenecen a ese grupo como grupo secundario.
•   c) Mostrar todos los usuarios de un grupo: mostrará los usuarios de los dos casos anteriores.
•   d) Salir: El script acaba su ejecución.
•   Los nombres de los usuarios deben mostrarse uno por línea si fuese posible.
SALUDOS DE -=[ §AßAÑÐØ ]=-






-=[ §ÂßÂÑÐØ ]=-

Perdonen se me olvido ponerle el codigo de lo que se...

Citar
#!/bin/bash
# determina usuarios en un grupo
opc=0
while [ $opc -ne 4 ];do
echo MENU
echo 1.-Mostrar usuarios de un grupo primarios
echo 2.-Mostrar usuarios de grupo secundarios
echo 3.-Mostrar todos los usuarios de un grupo
echo 4.-Salir
read opc

case $opc in
   1)
      

   ;;
   2)


   ;;
   3)
      echo Introduce el grupo del que quieres listar los usuarios
      read grupo
      existe=`cat /etc/group | grep "^$grupo"`
      if [ ! $existe ];then
           echo "El grupo $grupo no existe."
           exit
      fi
      gid=`echo $existe | cut -d: -f3`

      echo Los usuarios del grupo $grupo son:
      echo -----
      for i in `cat /etc/passwd | cut -d: -f1,4 | grep :$gid$ | cut -d: -f1`;do
         echo $i
      done 
      echo -----
   ;;
   4)
      echo Adios
   ;;
esac
done
 
SALUDOS DE -=[ §AßAÑÐØ ]=-