Isso pode dar uma direção: http://www.howtoforge.com/forums/showthread.php?t=25405
[]'s Eri 2008/8/26 fernando_gottlieb <[EMAIL PROTECTED]> > Olá pessoal. > Estive procurando uma maneira de obter o consumo de CPU e esbarrei em > características do top, a primeira leitura é sempre a mesma. > Continuando a procura por outra forma de obter este resultado, > encontrei vários trechos de códigos mas nenhum conclusivo. > Depois de algumas tentativas, consegui o que segue abaixo. > Espero que ajude alguém. > Gostaria, se possivel, de pedir sugestões para otimizá-lo. > Segue o código: > > ### Escreve dados sobre uso do processador > # Obtem duas leituras do comando top (top -b -d 0.5 -n2) > # Separa apenas as linhas onde aparece o uso da cpu (| grep 'Cpu(s)') > # Retira as strings contidas no inicio do texto contando dois espacos > (| cut -f2- -d ' ') > # Separa os dois primeiros parametros cortando os primeiros 18 > caracteres (| cut -c1-18) > # Substitui as strings %, u, s e y por espacos, deixando apenas as > virugulas (| tr '%usy' ' ') > var=$(top -b -d 0.5 -n2 | grep 'Cpu(s)' | cut -f2- -d ' ' | cut -c1-18 > | tr '%usy' ' ') > # Obtem o dado anterior a terceira virgula = user > user=$(echo $var | cut -d, -f3) > # Obtem o dado anterior a quarda virgula = sys > sys=$(echo $var | cut -d, -f4) > # Depois de obter o uso de cpu para usuario (%us = $user) e sistema > (%sy = $sys) > # faz a soma das variaveis usando bc (basic calculator) retirando o > numero sem o ponto > total=$(echo "$user + $sys" | bc | cut -d. -f1) > echo '#cpu = '$total > > Abraços > > Fernando > > > > ------------------------------------ > > --------------------------------------------------------------------- > Esta lista não admite a abordagem de outras liguagens de programação, como > perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio > aviso. > --------------------------------------------------------------------- > Sair da lista: [EMAIL PROTECTED] > --------------------------------------------------------------------- > Esta lista é moderada de acordo com o previsto em > http://www.listas-discussao.cjb.net > --------------------------------------------------------------------- > Servidor Newsgroup da lista: news.gmane.org > Grupo: gmane.org.user-groups.programming.shell.brazil > > Links do Yahoo! Grupos > > > [As partes desta mensagem que não continham texto foram removidas]