WikiJuanan: ShellScript

InformáticaLinuxAprendiendo LinuxApuntes LinuxFinkGuada LinexShell ScriptUbuntu Linux

MenuLinux    

#!/bin/bash

# CUOTEA: Programa para comprobar la cuota de disco de cada usuario con dir en /home

# Autor: Juanan Ruiz

if [ -r /home/cuota ]; then

TAM_DIR=$(cut -d: -f1 /home/cuota)

NUM_FICH=$(cut -d: -f1 /home/cuota)

for USUARIO in $(getent passwd | grep «/home/» | cut -d: -f1); do

DIR_USUARIO=$(getent passwd $USUARIO | cut -d: -f6 )

if [ -d $DIR_USUARIO ]; then

TAM_DIR_USUARIO=$(du -ks /home/$USUARIO | cut -f1)

NUM_FICH_USUARIO=$(find /home/$USUARIO -print | wc -l)

else

TAM_DIR_USUARIO=0

NUM_FICH_USUARIO=0

fi

echo -n "$USUARIO $DIR_USUARIO"

if [ $TAM_DIR_USUARIO -gt $TAM_DIR ]; then

echo -n " Excede cuota de disco en $- $TAM_DIR KB"

elif [ $TAM_DIR_USUARIO -ne 0 ];then

echo -n " Está utilizando un $* 100 / $TAM_DIR % de su cuota de disco"

else

echo -n “ No existe el directorio del usuario”

fi

if [ $NUM_FICH_USUARIO -gt $NUM_FICH ]; then

echo " Excede cuota en $- $NUM_FICH ficheros"

else

echo " No llega a la cuota por $- $NUM_FICH_USUARIO ficheros"

fi
# echo "$USUARIO $DIR_USUARIO $NUM_FICH_USUARIO $TAM_DIR_USUARIO"

done

else

echo «Error: no existe el fichero /home/cuota.»

fi