Один лайнер для отображения использования ЦП, ОЗУ и жесткого диска

9

Я видел несколько сообщений, которые хотели бы сказать об использовании, однако ответы ВСЕГДА относятся к установке стороннего инструмента.

Я не хочу ничего устанавливать.

Какие-либо вкладыши? Следующее было бы хорошим выходом:

CPU 11% RAM 20% HDD 85%
    
задан Karl Morrison 01.08.2017 в 14:50
источник

2 ответа

19

Вы можете использовать этот

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)}''"

Выходной сигнал

CPU 7.4% RAM 33.9% HDD 94%
    
ответ дан MKay 01.08.2017 в 15:31
источник
5

Для использования ЦП (в среднем (user+system)/(user+system+idle) раз более 0,1 секунды):

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

Для использования ОЗУ ( (total-available)/total ):

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

Для использования жесткого диска (только для объема, установленного как / ):

df | awk '/ \/$/{print "HDD "}'
    
ответ дан Byte Commander 01.08.2017 в 18:12