#!/bin/bash

# Skrypt fquota do analizy limitu miejsca na dysku w systemie Unix. 
# Przyjęte jest założenie, że konta użytkowników mają identyfikatory
# UID >= 100.
 
MAXDISKUSAGE=1 # W megabajtach.

for name in $(cut -d: -f1,3 /etc/passwd | awk -F: '$2 > 99 {print $1}')
do
  /bin/echo -n "Użytkownik $name przekroczył limit. Zajmowane miejsce: " 
  # Może być konieczna modyfikacja poniższej listy katalogów,
  # odpowiednio do ich struktury na dysku.
  find / /usr /var /home -xdev -user $name -type f -ls | \
      awk '{ sum += $7 } END { print sum / (1024*1024) " MB." }'

done | awk "\$9 > $MAXDISKUSAGE { print \$0 }"

exit 0
