Guest User

fordeIsmael.sh

a guest
Jun 11th, 2015
414
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/bin/bash
  2. #ismael moreno
  3. #for.sh
  4. #peso de cada perfil,superan 200MB ¿bloquear el accesso?,bin/false
  5. #se que me falta comentarle
  6.  
  7. # Vale, pues lo comentaré yo. (angeldp)
  8.  
  9. clear
  10. # Vale, lista de carpetas en /home
  11. # el problema es que
  12. for VARIABLE in `ls /home`
  13.     do
  14. # Mejor du -sh
  15.     PESOPERFILES=`du -s "/home/$VARIABLE" 2> /dev/null | cut -d: -f1`
  16. # Mejor echo "El directorio $VARIABLE ocupa $PESOPERFILES"
  17.     echo " el peso de los perfiles es de $PESOPERFILES "
  18. # done
  19. # El problema del bucle for anterior es que no lo aprovechas.
  20. # por eso comento el fin del bucle. Debe finalizar abajo del todo
  21. # Todo lo que pones a continuación debería ir dentro. Una
  22. # vez que ha finalizado $VARIABLE y $PESOPERFILES no se modifican
  23. # sleep 2
  24.     echo " este perfil es de $VARIABLE "
  25. #aqui abajo me da un fallo.... y no se porque
  26. # Las comillas son solo para cadenas de caracteres, con números no
  27. #   if [ "$PERSOPERFILES" -gt "200000" ]
  28.     if [ $PESOPERFILES -gt 200000 ]
  29.         then
  30.         echo " la carpeta /home/$VARIABLE pasa del limite permitido"
  31.         echo " ¿quiere bloquear la cuenta? "
  32.         echo " pulse s para aceptar o n para denegar "
  33.         read -n1 OPC
  34. # El if no acaba aquí
  35. # fi
  36.         case $OPC in
  37.             s | S )
  38.             echo " se esta procediendo a bloquear la cuenta "
  39.             echo  " espere "
  40.             sleep 1
  41.             echo "."
  42.             sleep 1
  43.             echo "."
  44.             sleep 1
  45.             echo "."
  46. # La variable BLOQUEAR no pinta nada, ojo con las llaves,corta los campos buenos (-f1-6) y ojo con espacios en nombres de archivos         
  47. # BLOQUEAR=`more etc/passwd | grep ^{$VARIABLE}: | cut -d":" -f7 > campo bueno.txt
  48.             LINEA=`more /etc/passwd | grep ^${VARIABLE}: | cut -d: -f1-6`
  49. # creo que eh cogido bien el campo siete del usuario que yo queria ahora no se como cogiendo ese campo como
  50. # modificarle... y cambiarle por /bin/bash.
  51. # Pues algo así como añadir /bin/false a la línea que no tenía campo 7
  52.             LINEA="${LINEA}:/bin/false"
  53. Solo queda eliminar la línea del archivo con grep -v
  54.             more /etc/passwd | grep -v ^${VARIABLE}: > miPasswd
  55. # Añadir la línea al fichero modificado
  56.             echo $LINEA >> miPasswd
  57. # Y mover el archivo a su sitio (tienes que ser root, igual deberías comprobarlo antes y redireccionar los errores
  58.             mv miPasswd /etc/passwd;;
  59. # echo " terminaria de hacerlo" ;;
  60. n | N )
  61. echo " gracias por todo "
  62. exit
  63. esac
  64. # cuando lo leas no seas malo y no te rias mucho de mi ajajajjaja
  65. # el exit le eh puesto hay pero dudaba si ponerle antes
  66. # no pongas el examen muy dificil que mira que nivel mas bajo tengo jajaj
Advertisement
Add Comment
Please, Sign In to add comment