Mac, Suseのtopコマンドでソート列の変更

 並び順を変えるのは、 o と打ったあと primary key [+rsize]: と聞かれるので、そのあとに列名を入れればいいようだ。

 %CPU でソートする場合は primary key [+rsize]:cpu として、 RSIZE(メモリ使用量)でソートする場合は primary key [+rsize]:rsize とする。

 複数列でソートしたい時は、O と打って 2番目に使用するソート列を決める。O と打つと secondary key [+rsize]: と聞かれるので、また列名を入れる。

 SUSEの場合は、> とか < で変わってくれる。 o とすると列の入れ替えが出来ます。下の画面で、CPUを一番左に持ってきたかったら、 K をたくさん押すと上がって来るので、終わったら Enter を押します。

Current Fields:  AEHIOTQWKNMbcdfgjplrsuvyzX  for window 1:Def
Upper case letter moves field left, lower case right

* A: PID        = Process Id                                 s: DATA       = Data+Stack size (kb)                      0x00100000  PF_USEDFPU (thru 2.4)
* H: PR         = Priority                                   v: nDRT       = Dirty Pages count
* I: NI         = Nice value                                 y: WCHAN      = Sleeping in Function
* O: VIRT       = Virtual Image (kb)                         z: Flags      = Task Flags 
* T: SHR        = Shared Mem size (kb)                     * X: COMMAND    = Command name/line
* Q: RES        = Resident size (kb)
* W: S          = Process Status                           Flags field:
* K: %CPU       = CPU usage                                  0x00000001  PF_ALIGNWARN
* N: %MEM       = Memory usage (RES)                         0x00000002  PF_STARTING
* M: TIME+      = CPU Time, hundredths                       0x00000004  PF_EXITING
  b: PPID       = Parent Process Pid                         0x00000040  PF_FORKNOEXEC
  c: RUSER      = Real user name                             0x00000100  PF_SUPERPRIV
  d: UID        = User Id                                    0x00000200  PF_DUMPCORE
  f: GROUP      = Group Name                                 0x00000400  PF_SIGNALED
  g: TTY        = Controlling Tty                            0x00000800  PF_MEMALLOC
  j: P          = Last used cpu (SMP)                        0x00002000  PF_FREE_PAGES (2.5)
  p: SWAP       = Swapped size (kb)                          0x00008000  debug flag (2.5)
  l: TIME       = CPU Time                                   0x00024000  special threads (2.5)

O とすると、ソート列の選択が出来ます。今は、メモリ使用量でソートされてますが、CPU usage でソートしたくなったら、この画面で k を押します。

Current Sort Field:  N  for window 1:Def
Select sort field via field letter, type any other key to return
  a: PID        = Process Id                                 u: nFLT       = Page Fault count  b: PPID       = Parent Process Pid                         v: nDRT       = Dirty Pages count
  c: RUSER      = Real user name                             w: S          = Process Status
  d: UID        = User Id                                    x: COMMAND    = Command name/line
  e: USER       = User Name                                  y: WCHAN      = Sleeping in Function
  f: GROUP      = Group Name                                 z: Flags      = Task Flags 
  g: TTY        = Controlling Tty
  h: PR         = Priority                                 Note1:
  i: NI         = Nice value                                 If a selected sort field can't be
  j: P          = Last used cpu (SMP)                        shown due to screen width or your
  k: %CPU       = CPU usage                                  field order, the '< ' and '>' keys
  l: TIME       = CPU Time                                   will be unavailable until a field
  m: TIME+      = CPU Time, hundredths                       within viewable range is chosen.
* N: %MEM       = Memory usage (RES)
  o: VIRT       = Virtual Image (kb)                       Note2:
  p: SWAP       = Swapped size (kb)                          Field sorting uses internal values,
  q: RES        = Resident size (kb)                         not those in column display.  Thus,
  r: CODE       = Code size (kb)                             the TTY & WCHAN fields will violate
  s: DATA       = Data+Stack size (kb)                       strict ASCII collating sequence.
  t: SHR        = Shared Mem size (kb)                       (shame on you if WCHAN is chosen)
Mac, Suseのtopコマンドでソート列の変更