Bir üst komutta belirli bir sütun alabilir miyiz, örneğin sadece bellek kullanımı ve CPU kullanım sütunu ile ilgileniyorum.
Top komutunun görüntülenen sütunlarını yalnızca yukarıdaki iki sütuna nasıl azaltabilirim?
top -h) sağlayın .
Bir üst komutta belirli bir sütun alabilir miyiz, örneğin sadece bellek kullanımı ve CPU kullanım sütunu ile ilgileniyorum.
Top komutunun görüntülenen sütunlarını yalnızca yukarıdaki iki sütuna nasıl azaltabilirim?
top -h) sağlayın .
Yanıtlar:
NOT: top(procps) uygulamasının bu sürümüne sahip olduğunuzu varsayarsak . Bu komutla kontrol edebilirsiniz:
$ top --version
top: procps version 3.2.8
usage: top -hv | -bcisSH -d delay -n iterations [-u user | -U user] -p pid [,pid ...]
procps genellikle topFedora / CentOS / RHEL ve diğer varyantlarla birlikte gelen sürümdür .
Man sayfasına bakarsanız, top"2b. Sütunları SEÇME ve SİPARİŞ VERME" başlıklı bir bölüm görürsünüz. Farklı alanlar / sütunlar için görünürlüğü değiştirmek için klavye kısayolları vardır.
Örneğin:
f,o . Fields/Columns: 'f' add or remove; 'o' change display order
F or O . Select sort field
<,> . Move sort field: '<' next col left; '>' next col right
Sen tuşunu kullanabilirsiniz fise topsütunları görünür ya da değil toggled gerektiğini belirtebilirsiniz ikincil ekrana almak için:
Örneğin:
Current Fields: ANOPQRSTUVbcdefgjlmyzWHIKX for window 3:Mem
Toggle fields via field letter, type any other key to return
* A: PID = Process Id * W: S = Process Status
* N: %MEM = Memory usage (RES) * H: PR = Priority
* O: VIRT = Virtual Image (kb) * I: NI = Nice value
* P: SWAP = Swapped size (kb) * K: %CPU = CPU usage
* Q: RES = Resident size (kb) * X: COMMAND = Command name/line
* R: CODE = Code size (kb)
...
Dahası var, bunlar sadece bir örnek. Sütunları istediğiniz gibi değiştirmeyi tamamladığınızda Esc, seçim ekranından çıkmak için düğmesini kullanın .
Değişikliklerinizi varsayılan olarak kaydedilmesi için Shift+ işaretini kullanabilirsiniz W:
W Write configuration file
Dosya burada saklanır $HOME/.toprcve şöyle görünür:
$ more .toprc
RCfile for "top with windows" # shameless braggin'
Id:a, Mode_altscr=0, Mode_irixps=1, Delay_time=1.000, Curwin=2
Def fieldscur=AEHIoqTWKNMBcdfgjpLrsuvyzX
winflags=129016, sortindx=19, maxtasks=0
summclr=2, msgsclr=5, headclr=7, taskclr=7
Job fieldscur=ABcefgjlrstuvyzMKNHIWOPQDX
winflags=63416, sortindx=13, maxtasks=0
summclr=6, msgsclr=6, headclr=7, taskclr=6
Mem fieldscur=ANOPQRSTUVbcdefgjlmyzWHIKX
winflags=65464, sortindx=13, maxtasks=0
summclr=5, msgsclr=5, headclr=4, taskclr=5
Usr fieldscur=ABDECGfhijlopqrstuvyzMKNWX
winflags=65464, sortindx=12, maxtasks=0
summclr=3, msgsclr=3, headclr=2, taskclr=7
Daha fazla ayrıntı için "5. DOSYALAR" için kılavuz sayfanın 5. bölümüne bakın.
[Centos-6 | Ubuntu 12.10] Bu cmd baskı 4 üst işlem CPU İşlemine göre sırala
top -bn 1 | grep "^ " | awk '{ printf("%-8s %-8s %-8s\n", $9, $10, $12); }' | head -n 5
Çıktı
%CPU %MEM COMMAND
7.7 0.2 top
0.0 0.3 init
0.0 0.0 kthreadd
0.0 0.0 migration/0
Not: Sütun adımız da olduğu için 4 yerine -n 5
$ 9, $ 10, $ 12 sütunları CPU, MEM, COMMAND anlamına gelir. Sütun numaralarını almak için 'top' komutunu kullanın
HAFIZA KULLANIMI'na göre sıralayın ('üstünüz' bunu çalıştırmak için -m'yi desteklemelidir)
# this work on my centos-6 machine, NOT work on my Ubuntu 12.10
top -m -bn 1 | grep "^ " | awk '{ printf("%-8s %-8s %-8s\n", $9, $10, $12); }' | head -n 5
json formatında görüntülemek ve başlığı kaldırmak da,
top -bn 1 | grep "^ " | awk '{ printf("%s%s%s\n","{CPU:"$9",","MEM:"$10",","CMD:"$12"}"); }' | head -n 6 | tail -n +2
aşağıdaki gibi çıktı,
{CPU:6.4,MEM:0.3,CMD:gnome-terminal}
{CPU:6.4,MEM:1.9,CMD:chrome}
{CPU:0.0,MEM:0.0,CMD:init}
{CPU:0.0,MEM:0.0,CMD:kthreadd}
{CPU:0.0,MEM:0.0,CMD:ksoftirqd/0}
grep | awk | head | tailtek halinde birleşmiştir edilebilir awk.
Komut satırı yapılandırması
Kullanıcının üzerine yazarak tüm kullanıcımı etkilemek istemedim .toprc, bu nedenle kullanım durumu başına ayrı bir yapılandırmaya sahip bir çözüm buldum.
Sen yapabilir topyerine kullanıcıların giriş dizininde birinin özel bir yapılandırma dosyasını kullanın. Değişkeni , ihtiyaçlarınız için dosyayı içeren özel bir dizine
değiştirin .HOME.toprc
# TOPRC_PROFILE_DIRECTORY contains .toprc (or can be created by saving using shift+w after configuring using keybindings)
TOPRC_PROFILE_DIRECTORY="<your-directory>"
HOME="$TOPRC_PROFILE_DIRECTORY" top
topvaryantı? Düzinelerce üst uygulama var.