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