Um forro para mostrar o uso de CPU, RAM e HDD

9

Eu vi algumas postagens desejando o mesmo em relação ao uso, no entanto, as respostas SEMPRE se referem à instalação de alguma ferramenta de terceiros.

Eu não quero instalar nada.

Qualquer um dos forros? O seguinte seria uma boa saída:

CPU 11% RAM 20% HDD 85%
    
por Karl Morrison 01.08.2017 / 16:50

2 respostas

19

Você pode usar isso

echo "CPU 'LC_ALL=C top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*//" | awk '{print 100 - }''% RAM 'free -m | awk '/Mem:/ { printf("%3.1f%%", /*100) }'' HDD 'df -h / | awk '/\// {print $(NF-1)}''"

A saída é

CPU 7.4% RAM 33.9% HDD 94%
    
por MKay 01.08.2017 / 17:31
5

Para uso da CPU (média de (user+system)/(user+system+idle) vezes em 0,1 segundos):

(grep 'cpu ' /proc/stat;sleep 0.1;grep 'cpu ' /proc/stat)|awk -v RS="" '{print "CPU "(-+-)*100/(-+-+-)"%"}'

Para uso da RAM ( (total-available)/total ):

awk '/MemTotal/{t=}/MemAvailable/{a=}END{print 100-100*a/t"%"}' /proc/meminfo

Para uso de HDD (somente do volume montado como / ):

df | awk '/ \/$/{print "HDD "}'
    
por Byte Commander 01.08.2017 / 20:12