CPU, RAM ve HDD kullanımını gösteren bir astar


15

Kullanımla ilgili olarak aynı isteyen birkaç gönderi gördüm, ancak yanıtlar DAİMA bazı üçüncü taraf araçların kurulumuna atıfta bulunuyor.

Hiçbir şey kurmak istemiyorum.

Herhangi bir astar var mı? Aşağıdaki hoş bir çıktı olacaktır:

CPU 11% RAM 20% HDD 85%

HDD kullanımı yüzde ne kadar dolu veya ne kadar meşgul?
Byte Komutanı

Her ikisi de mi? :) Ciddi bir kayda göre, kapasite olsa. Her ikisi de güzel olurdu.
Karl Morrison

İç geçirin .......: - /
Bayt Komutanı

@ByteCommander Kapasiteye göre, net olmasaydım "ne kadar dolu" demek istiyorum :)
Karl Morrison

Yanıtlar:


29

Bunu kullanabilirsiniz

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

Çıktı

CPU 7.4% RAM 33.9% HDD 94%

2
HD bölüm çok fazla bölüm varsa emecek.
coteyr

1
df -h /komut satırının bir bölümü, /bölümle ilgili istatistikleri gösterir . df -hKomutu tekrarlayabilir ve /izlemeniz gereken bağlama noktasıyla değiştirebilirsiniz.
MKay

1
Benim için çalışmıyor. CPU her zaman% 91, bunu nereden aldığı hakkında hiçbir fikrim yok. // Ve RAM, bitkinmiş gibi görünmesini sağlayan tamponlar ve önbellek içerir. % 97.8 RAM kullanıyorum, ancak hala% 67.5 boş.
Oskar Skog

2
@OskarSkog Sorun yok top. CPU kullanımı geçerli zamanda ölçülemez, kısa bir zaman aralığında ölçülmelidir. Ne zaman topilk yineleme çalışır, bu son yeniden beri ortalama kullanımını gösterir. İkinci yinelemeden başlayarak, önceki yinelemeden bu yana gerçek geçerli kullanımı gösterir. Yerelleştirme ile ilgili sorunlarınız varsa, LC_ALL=Cvarsayılan İngilizce yerelleştirmeyi (dil değil sayı biçimleri vb.) Kullanma komutunun önüne koyabilirsiniz .
Byte Komutanı

2
@MKay: Sen değiştirmek isteyebilir top -bn1 | grep "Cpu(s)"ile top -bn2 | grep "Cpu(s)" | tail -n1. Birincisi, Byte Komutanının işaret ettiği gibi uzun vadeli bir ortalama gösterecektir.
Oskar Skog

7

CPU kullanımı için (ortalama (user+system)/(user+system+idle)0,1 saniyeden fazla):

(grep 'cpu ' /proc/stat;sleep 0.1;grep 'cpu ' /proc/stat)|awk -v RS="" '{print "CPU "($13-$2+$15-$4)*100/($13-$2+$15-$4+$16-$5)"%"}'

RAM kullanımı için ( (total-available)/total):

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

HDD kullanımı için (yalnızca şu şekilde monte edilen birimin /):

df | awk '/ \/$/{print "HDD "$5}'

İlginç, `` free -m | kafa -n3 | tail -n1 'boş bellek olarak bildiriyor.
Oskar Skog

@OskarSkog Bu komutun çıktısını paylaşabilir misiniz? Benim için, burada alakalı olmayan Takas toplamı / kullanılmış / serbest satırını yazdırır. Belki başka bir şey demek istediniz, ya da freekomutunuz hala eski çıktı biçimini ayrı - / + tamponlar / önbellek satırıyla kullanıyor ...
Byte Commander

Benim ücretsiz eski biçimi kullanır: oskog97.com/sshin/free-output.png Ne değişti?
Oskar Skog

3
@OskarSkog "- / + arabellekleri / önbellek" satırı kaldırıldı ve artık "Mem" satırında ek bir "kullanılabilir" sütunu var. Kimden man free: " Yeni uygulamaları başlatmak için, takas olmadan ne kadar bellek bulunduğuna dair tahmin. Önbellek veya boş alanlar tarafından sağlanan verilerin aksine, bu alan sayfa önbelleğini dikkate alır ve ayrıca öğeler nedeniyle tüm geri kazanılabilir bellek levhalarının geri kazanılmasını önler / proc / meminfo'da kullanılabilir, 3.14 çekirdeklerinde kullanılabilir, 2.6.27+ çekirdeklerinde öykünür, aksi takdirde ücretsiz olarak aynıdır) "
Byte Commander
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.