[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
script pra somar bytes do home de usuarios
From: |
Roberto Alves |
Subject: |
script pra somar bytes do home de usuarios |
Date: |
Thu, 24 Aug 2006 15:38:08 -0300 |
Pessoal,
to tentando fazer um script que crie uma lista de arquivos do home de cada
usuario em uma maquina, com o du, e some os arquivos por usuario para eu
saber quanto cada um tá gastando de disco.
O script não deve ser dificil mas to errando, acho que no algoritimo.
explicacao:
eu criei uma lista "du.home.txt" atraves do comando "du" e tirei as colunas
que não serviam e fiquei apenas com uma coluna de bytes e outra do nome do
arquivo com o caminho de cada um.
Esse arquivo limpinho com bytes e files eu chamei de du.home.tmp.
Quando leio esse arquivo eu tento armazenar o nome do usuario e somar todos
os arquivos de cada user mas nao to conseguindo acertar o processo.
Eu comentei esses passos pra nao repetir a toda hora nos testes e fiquei com
um arquivinho pequeno e resumido pra eu poder verificar mais facil.
A cara dele é a seguinte:
server1@>more du.home.tmp
admin 5
admin 5
guest 10
user9 5
user9 3
Alguem pode me dar uma ajuda?
server1@>cat du_home.sh
#!/bin/ksh
# Nome : Du-home
# Procedimento : Verificar o uso em kbytes do fs /home por usuario
#
clear
#du -k /home > du.home.txt
#cat du.home.txt |cut -f3 -d/ > user.txt
#cat du.home.txt |cut -f1 > size.txt
#paste user.txt size.txt | sort > du.home.tmp
usuario="a"
BYTE=0
BYTESUM=0
while :
read USER BYTE
do
[ $USER != $usuario ] &&
BYTESUM=$(( "$BYTESUM" + "$BYTE" ))
echo "Total de uso em disco do usuario $USER em bytes: $BYTESUM"
||
# > saida.teste
BYTESUM=$(( "$BYTESUM" + "$BYTE" ))
usuario=$USER
echo "Total de uso em disco do usuario $USER em bytes: $BYTESUM"
# >> saida.teste
done < du.home.tmp
[As partes desta mensagem que não continham texto foram removidas]
- script pra somar bytes do home de usuarios,
Roberto Alves <=