互動模式 INTERACTIVE Commands

底下列出了簡短的分類,有些命令會出現不只一次:

  • Global-Commands

    <Ent/Sp> ?, =, 0,A, B, d, E, e, g, h, H, I, k, q, r, s, W, X, Y, Z
    
  • Summary-Area-Commands C, l, t, m, 1, 2, 3

  • Task-Area-Commands
    Appearance:  b, J, j, x, y, z
    Content:     c, f, F, o, O, S, u, U, V
    Size:        #, i, n
    Sorting:     <, >, f, F, R
    
  • Color-Mapping
    <Ret>, a, B, b, H, M, q, S, T, w, z, 0 - 7
    
  • Commands-for-Windows
    -, _, =, +, A, a, g, G, w
    
  • Scrolling-a-Window
    C, Up, Dn, Left, Right, PgUp, PgDn, Home, End
    
  • Searching-in-a-Window
    L, &
    

GLOBAL Commands

全域的互動指令可以在『full screen』和『alternate display』模式中使用,但是有一些互動指令是沒辦法在『Secure』 模式中使用的。如果你不確定你的top是不是在secured模式的話,可以直接按『?』或是『h』來看看help頁面,第二行的後面是否有一個『Secure mode On.』。

< Enter> or < Space> :Refresh-Display
當你按下『Enter』或是『Space』後,則整個資訊將會被馬上更新。

? | h :Help
top有兩種等級的help資訊,第一種會提供所有基本的互動命令,而如果你的top是secured mode的話,則你的螢幕將只會出現一些簡短的訊息。

= :Exit-Task-Limits
如果你之前有設定任何的限制或是遮罩的話,這個命令將會取消任何像是『i』或是『n』的效果。而且這個命令也會取消任何的『pid monitoring』,『user filtering』和『other filtering』,這部份的話『Pid monitoring』請參考『-p』,『user filtering』請參考『U』或是『u』,『other filtering』請參考『O』和『o』。

還有任何視窗的延伸也都會被reset。

0 :Zero-Suppress toggle
這是零不是歐,代表的是是否要在螢幕上顯示0,但是有一些欄位則不會被影響,像是『UID』,『GID』,『NI』,『PR』,『P』。

像底下這兩張圖一樣,第一張圖是按『0』前,可以看到很多資訊下面都有零。

但是第二張圖是按『0』後,很多顯示零的地方都變成空白的:

A :Alternate-Display-Mode toggle
在『full-screen』和『alternate-display』mode底下切換,這部份的話請參考『Alternate-Display』,並且命令『g』將會切換目前視窗的『field groups』。

如下圖所示,這就是所謂的『alternate-display mode』,可以很清楚的看到有4個視窗:

B :Bold-Disable/Enable toggle
這個命令會將目前視窗中『summary area』和『task area』的某一些資訊變粗體(不過老實說,看不太出來就對了,要努力看@@)。

* d | s :Change-Delay-Time-interval
用這個命令可以改變你目前的資訊變更頻率。這部份除了不能設定負值以外,基本上從0到以上都可以用。設定為0的話代表會一直幾乎零時差的在更新,這樣的話應該很容易讓你的整個tty當掉,所以要使用的話要小心。如果你想要知道目前你設定的『delay time』的話,可以直接按『?』或是『h』,則第二行的部份就有目前的delay time。

E :Extend-Memory-Scale in Summary Area
在『Summary Area』中,top預設的size顯示是以『KiB』為單位,如果你想要切換顯示的單位的話就可以用這個命令,這個命令可以讓你的顯示單位一直從KiB(kibibytes 或是 1,024 bytes)一直切換到EiB (exbibytes 或是 1,152,921,504,606,846,976 bytes)。

如下圖,預設的話單位可以看到是『Kib』:

按一下『E』以後,會往上一個單位,所以變成『Mib』:

如果你有看到一個加號『+』在一個數字和接下來的label中間的話,代表你的size的單位所呈現的數字已經放不下了,所以被top給強制給截斷了。這時候你可以增加你的係數,這樣就不會了。

e :Extend-Memory-Scale in Task Windows
上一個指令『E』代表的是切換在『Summary Area』的記憶體單位,而這一個『e』則是代表切換在『Task Windows』裡面的記憶體顯示單位,用法跟『E』一樣。

下圖舉例,預設單位是『Kib』,因為是預設,所以沒有顯示什麼:

按一下『e』以後,發現有幾個欄位後面接了一個『m』代表變『Mib』了:

g :Choose-Another-Window/Field-Group
在『alternate-display mode』裡面有四個視窗,每一個都是不同的欄位組合。所以這一個命令,主要就是要你輸入一個1~4的數字,然後將那一個組合的內容給置換到目前的視窗裡。

H :Threads-mode toggle
一般來說,top一開始會顯示在每個行程的所有thread總量,但是啟動這個命令後,所有行程的threads將會以個別顯示的方式出現。

按『H』之前,顯示的是以『Task』為單位:

按『H』之後,變成了以『Thread』為單位:

I :Irix/Solaris-Mode toggle 當你執行這個命令,就會切換到『Solaris mode』,這時候一個task的cpu使用率將會以除以所有CPU總數的方式呈現。

* k :Kill-a-task
系統會叫你輸入一個PID,然後會送訊號給這個PID刪除這個process。如果是輸入空值或是負值的話,通常就會直接刪掉第一個顯示的task,如果是輸入PID『0』的話就是刪掉top自己。
至於預設的訊號,則是會送出『SIGTERM』,當然你可以自由的去修改你要送的訊號類別。

如果你是按錯了,想要取消的話,可以用底下三個方式: 1.在輸入pid的地方輸入一個非法的數字。 2.在輸入訊號的地方輸入0或是非法的訊號。 3.直接按『ESC』摟。

q :Quit
這不用講了吧,就是離開top。

連這都要問的話,Linux會給你一個中指。

* r :Renice-a-Task
這個命令可以修改行程的『nice』值,系統會提示叫你輸入PID的值,還有欲修改的nice值。如果PID沒有輸入或是為負值的話,則系統將會將其解譯為第一個task,如果PID為0的話會是top自己。

nice值如果是負數,則代表優先權會比較高,而如果nice值是正數的話代表優先權會比較低,通常這部份有一個既定俗成,就是一般的使用者應該只能提高,而不能減少優先權。

如果你想要取消這個操作的話,可以由底下三個動作完成: 1.在輸入pid的提示下,輸入一個非法的數字。 2.在輸入nice的提示下,直接按『Enter』就好。 3.直接按『ESC』。

W :Write-the-Configuration-File
top有自己的設定檔,所以如果你要的話,可以將你所作的變更都存起來,只要按『W』就好,top就會幫你存到組態檔底下,這樣你下次在啟動top時候會用上一次的設定了。

X :Extra-Fixed-Width
在top中,有些欄位寬度是固定的不能調節的。所以在這些欄位底下,他們的數值有可能會被截掉,並且在後面顯示一個加號『+』。

而這個命令可以用來置換掉底下的預設欄位寬度:

Field Default Field Default Field Default
GID 5 GROUP 8 WCHAN 10
RUID 5 RUSER 8 nsIPC 10
SUID 5 SUSER 8 nsMNT 10
UID 5 USER 8 nsNET 10
TTY 8 nsPID 10
nsUSR 10
nsUTS 10

輸入這個命令後,系統請你在提示字符後面輸入上表預設欄寬的總額。如果你輸入的是負值的話,則top將會自動的幫你增加到最大,直到沒有資訊被截掉為止。如果輸入『0』的話則將會返回這些預設值。

Y :Inspect-Other-Output
當你使用這個命令後,系統將會請你輸入一組PID,你可以自己輸入,或是使用預設的(通常是第一個task),然後你就會看到會有另一個視窗出現,在這個視窗上可以檢視各種的檔案或是piped命令輸出。

在這個分離視窗上面header其實就已經有各種的操作方式,但是如果你選擇了明確的檔案或是命令的話,會有額外的功能出現。

key function
'=’ 在『status-line』,『file』,『pipeline』中間切換
'/’ 搜尋,跟『L』一樣。
'n’ 找下一個,跟『&』一樣。
&ltSpace> 往下捲動,跟『PgDn』一樣。
'b’ 向上捲動,跟『PgUp』一樣。
'g’ 第一行,跟『Home』一樣。
'G’ 最後一行,跟『End』一樣。

Z :Change-Color-Mapping
這個命令將會到另一個視窗底下,然後允許你改變目前或是全部視窗的顏色

SUMMARY AREA Commands

『summary area』的互動命令總是可以在『full-screen』和『alternate-display』模式裡面用,因為它通常只會影響到在『summary area』下面的幾行而已,還有『alternate-display』的『current』視窗。

C :Show-scroll-coordinates toggle
在『summary area』最下面顯示scroll的係數,讓你知道垂直和水平總共和目前的係數。

l :Load-Average/Uptime toggle
小寫的『L』, 主要是看要不要顯示『summary area』最上面的那一行資訊。

如下圖,最上面那一行不見了。

t :Task/Cpu-States toggle
這個命令影響了在『summary area』的兩行到多行的資訊,主要是看你命令『1』,『2』,『3』的狀態,還有會被你的top是否是在『true SMP』模式底下運行所影響。這個部份的資訊也會被『H』命令給影響。

底下是按了兩次『t』以後CPU欄位的變化,還有最後一個是按了『2』顯示了NUMA節點以後的顯示資訊:

m :Memory/Swap-Usage toggle
這個命令影響了在『summary area』上面兩行處理實體和虛擬記憶體的資訊。主要是在『不顯示』,『只顯示數量』,『比例總量1』,『比例總量2』,四個狀態中切換。

1 :Single/Separate-Cpu-States toggle
這個命令影響了『t』命令,CPU狀態總量如何被顯示,雖然這個命令是用來在大量平行SMP機器上面用的,但是單獨的SMP也是可以用。

當你看到『%Cpu(s):』在『summary area』時,則代表『1』已經被啟動了,所有cpu的資訊都被收集到同一行,否則,每一個cpu資訊將會被分別的顯示像是『%Cpu0』,『%Cpu1』,『%Cpu….』。

一般預設:

按了『1』以後,列出了所有CPU的資訊。

按『t』,轉換成比例總量1。

再按一次『t』,轉換成比例總量2。

2 :NUMA-Nodes/Cpu-Summary toggle
這個命令會在[ cpu命令『1』 ]和[ 『1』+對於每個NUMA節點的cpu使用統計使用量之間切換 ]。這個命令只有在系統有必要的NUMA支援的狀況下才能使用。

一般預設:

按了『2』以後,列出了所有NUMA的資訊。

按『t』,轉換成比例總量1。

再按一次『t』,轉換成比例總量2。

3 :Expand-NUMA-Node
系統會請你輸入一個數字,代表的是一個『NUMA節點』,在這之後,裡面有每個cpu的統計資訊的節點資訊將會被顯示出來,直到你在按『1』或是『2』以後才會不見。這個命令只有在系統有必要的NUMA支援的狀況下才能使用。

TASK AREA Commands

在『task area』的互動命令總是可以在全螢幕模式下用。但是在『alternate-display』模式底下如果『current』視窗顯示已經被切掉的話將不可使用。

APPEARANCE of task window

J :Justify-Numeric-Columns toggle
把你的數字在『right-justified』和『left-justified』 之間切換,預設的話是『right-justified』,如果你的數字資料剛好可以填滿你的欄位的話,那這個命另將會只影響到欄位的表頭。

j :Justify-Character-Columns toggle
將你的字元在『right-justified』和『left-justified』 之間切換,預設的話是『left-justified』,如果你的字元資料剛好可以填滿你的欄位的話,那這個命另將會只影響到欄位的表頭。注意一下這個欄位資訊也會被『B(bold enable)』給影響到。

b :Bold/Reverse toggle
這個命令將會影響命令『x』和『y』的切換顯示。

x :Column-Highlight toggle
標記目前的排序欄位的『highlighting』,如果你忘記了是以那一個欄位來排序的話,則這個命令可以提醒你這件事情。排序過個欄位也看不到有可能是因為:1. 沒有足夠的螢幕寬2. 命令『f』已經關掉他了。還要注意一件事情是,每當『Searching』或是『Other Filtering』在視窗內被啟動的話,『column highlighting』將會被暫時的取消。

y :Row-Highlight toggle
切換正在執行中tasks的highlighting。使用這個資訊的話可以判斷你的系統的健康度,唯一的損失可能就是幾個額外的tty跳脫字元吧。

z :Color/Monochrome toggle
快速切換你目前視窗的color scheme,從上一次的到黑底白字或是白底黑字。這個命令將會影響整個『summary area』和『task area』,但是不會去影響到『x』和『y』的狀態。

CONTENT of task window

c :Command-Line/Program-Name toggle
這個命令將會在『Command-Line』和『Program-Name』之間切換。

f | F :Fields-Management
這個上面講過了,主要就是顯示另一個視窗,讓你挑要顯示哪幾個欄位,還有排序等等。

i : Idle-Process toggle
預設的話可以看到系統大部分的行程CPU和記憶體使用量都為0的閒置行程。

按一下『i』以後,很多閒置的行程就不會顯示了:

o | O :Other-Filtering
這個命令會讓你加入相關的濾鏡來決定哪些task會被顯示在目前的視窗上。你的條件標準可以是『case sensitive』或是可以不要,又或者是你可以決定你的top應該是包含或不包含塞選出來的tasks。這部份有需要的話可以參考一下下一章的『FILTERING in a Window』,會有更詳細的介紹。

S :Cumulative-Time-Mode toggle
當『Cumulative mode』啟動的話,每個行程與其結束掉的子孫的cpu 時間將會都被顯示出來。當關掉時(off),程式被fork到許多其他task當然就會顯示比較少的資訊。

u | U :Show-Specific-User-Only
你可以使用user name 或是uid來當成filter的條件,這樣就只會秀出這個使用者的資訊。『-u』只會匹配『effective user』而『-U』則會則會批配各種的user資訊(包含了real, effective, saved,或是fileststem)。

而如果在使用者或uid前面加一個驚嘆號『!』的話則相反,就代表除了這個使用者以外其他都會顯示。

V :Forest-View-Mode toggle
『Forest view mode』,在這個模式底下,所有的行程將會根據他們的parent來重新排序,或是會根據命令欄位的組合來重新組合。在這個模式底下你還是可以使用『c』來切換『program 』和『cmd』模式,或者是使用『H』來切換『processes』和『threads』模式。

SIZE of task window

底下這兩個命令使用時可能會去影響到『task window』的size,這邊就大概知道一下有這麼一回事就好了:

  1. i :Idle-Process toggle
  2. n | # :Set-Maximum-Tasks

SORTING of task window

由於兼容性的關係,top保留了之前排序的keys值:

Command Sorted-field Supported
A start time (non-display) No
M %MEM Yes
N PID Yes
P %CPU Yes
T TIME+ Yes

在使用接下來的排序規定之前,top建議你暫時先用『x』打開『highlighting模式』,雖然說他的highlighting模式也沒有多明顯就對了,但是至少這樣你努力點還是可以看到差異點。

在目前的排序欄位是可視的狀況之下,底下的命令也會是可用的,但是注意一下兩點,如果排序欄位是不可視的有可能是因為:

  1. 沒有足夠的螢幕寬。
  2. 命令『f』將其關掉了。

< :Move-Sort-Field-Left
將排序欄位往左移,除非現在就是第一欄了(最左)。

> :Move-Sort-Field-Right
將排序欄位向右移,除非現在就是最後一欄了(最右)。

底下這兩個命令,不管現在的排序欄位是否是在可視的狀況之下,都是可以使用的:

  1. f | F :Fields-Management
  2. R :Reverse/Normal-Sort-Field toggle, 第二個命令可以切換升冪或是降冪。

COLOR Mapping

當你使用命令『Z』時,系統將會跑出另一個視窗,這個視窗將會用來改變『full screen』mode和『alternate-screen』mode的顏色。

進入這視窗後,相關的命令說明如下: 使用『S』,『H』,『M』和『T』來選擇你的target。 使用八個數字來代表你的顏色『0 ~ 7』。 底下三個額外命令:

Keys Description
'B' 啟動/關閉粗體字
'b' running tasks "bold"/reverse
'z’ 是否要顯示顏色

其他三組命令:

Keys Description
'a'/'w’ 套用,並且切換到下一個/上一個視窗。
&ltEnter> 套用並且離開。
'q’ 直接捨棄設定並且離開。

results matching ""

    No results matching ""