歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

Linux命令中的進程查看概述

本節中要介紹的不只是進程查看方面的內容,由於Linux是個多用戶系統,有時候也要了解其他用戶現在在干什麼,所以在本節中還將接觸多用戶方面的內容。同時Linux是一個多進程系統,經常需要對這些進程進行一些調配和管理;而要進行管理,首先就要知道現在的進程情況:究竟有哪些進程?進程情況如何?等等。所以需要進程查看方面的工作。
  who命令
  該命令主要用於查看當前在線上的用戶情況。這個命令非常有用。如果用戶想和其他用戶建立即時通訊,比如使用talk命令,那麼首先要確定的就是該用戶確實在線上,不然talk進程就無法建立起來。又如,系統管理員希望監視每個登錄的用戶此時此刻的所作所為,也要使用who命令。
  who命令的常用語法格式如下:
  who [imqsuwHT] [--count] [--idle] [--heading] [--help] [--message] [--mesg] [--version] [--writable] [file] [am i]
  所有的選項都是可選的,也就是說可以單獨使用who命令。不使用任何選項時,who命令將顯示以下三項內容:
  login name:登錄用戶名;
  terminal line:使用終端設備;
  login time:登錄到系統的時間。
  如果給出的是兩個非選項參數,那麼who命令將只顯示運行who程序的用戶名、登錄終端和登錄時間。通常這兩個參數是“am i”,即該命令格式為:“who am i”。
  下面對who命令的常用參數進行說明。
  -m 和“who am i”的作用一樣,顯示運行該程序的用戶名。
  -q,--count 只顯示用戶的登錄帳號和登錄用戶的數量,該選項優先級高於其他任何選項。
  -s 忽略。主要是用於和其他版本的who命令兼容。
  -i,-u,--idle 在登錄時間後面顯示該用戶最後一次對系統進行操作至今的時間,也就是常說的“發呆”時間。其中“.”符號代表該用戶在前1秒仍然處於活動狀態;“old”則表示該用戶空閒已經超過了24小時。
  -H,--heading 顯示一行列標題。常用的標題如表4-2所示。
  表4-2 who命令輸出常用標題
  標 題
  說 明
  USER
  用戶登錄帳號
  LINE
  用戶登錄使用終端
  LOGIN-TIME
  用戶登錄時間
  IDLE
  用戶空閒時間,即未進行操作的時間
  PID
  用戶登錄shell的進程ID
  FROM
  用戶網絡地址
  -w,-T--mesg,--message,--writable 和-s選項一樣,在登錄帳號後面顯示一個字符來表示用戶的信息狀態:
  +:允許寫信息;
  -:不允許寫信息;
  ?:不能找到終端設備。
  --help 在標准輸出上顯示幫助信息。
  --version 在標准輸出上顯示版本信息。
  下面介紹who命令的一些基本用法。
  如果需要查看在系統上究竟有哪些用戶,可以直接使用who命令。
  [例17] 查看登錄到系統的用戶情況
  $ who
  root tty1 Mar 17 13:49
  foxy tty2 Mar 17 13:49
  root tty3 Mar 17 13:49
  bbs ttyp0 Mar 17 13:49 (river.net)
  可以看到,現在系統一共有四個用戶。第一列是登錄用戶的帳號;第二列是登錄所使用的終端;第三列是登錄時間;第四列是用戶從什麼地方登錄的網絡地址,這裡是域名。
  一般來說,這樣就可以了解登錄用戶的大致情況了。但有時上面的顯示不是那麼直觀,因為沒有標題說明,不容易看懂,這時就需要使用-H選項了。
  [例18] 查看登錄用戶的詳細情況,鍵入:
  $ who -uH
  顯示如下:
  USER LINE LOGIN-TIME IDLE FROM
  root tty1 Mar 17 13:49 .
  foxy tty2 Mar 17 13:49 00:01
  root tty3 Mar 17 13:49 00:01
  bbs ttyp0 Mar 17 13:49 00:01 (river.net)
  這樣一目了然。其中-u選項指定顯示用戶空閒時間,所以可以看到多了一項IDLE。第一個root用戶的IDLE項是一個“.”,這就說明該用戶在前1秒仍然是活動的,而其他用戶後面都有一個時間,稱為空閒時間。
  最後來看看使用“who am i”格式命令的結果:
  233.river.net!root tty1 Mar 17 13:49
  可見只顯示出了運行該who命令的用戶情況,當然這時候不存在空閒時間。
  who命令應用起來非常簡單,可以比較准確地掌握用戶的情況,所以使用非常廣泛。
  w命令
  該命令也用於顯示登錄到系統的用戶情況,但是與who不同的是,w命令功能更加強大,它不但可以顯示有誰登錄到系統,還可以顯示出這些用戶當前正在進行的工作,並且統計數據相對who命令來說更加詳細和科學,可以認為w命令就是who命令的一個增強版。
  w命令的顯示項目按以下順序排列:當前時間,系統啟動到現在的時間,登錄用戶的數目,系統在最近1秒、5秒和15秒的平均負載。然後是每個用戶的各項數據,項目顯示順序如下:登錄帳號、終端名稱、遠程主機名、登錄時間、空閒時間、JCPU、PCPU、當前正在運行進程的命令行。
Copyright © Linux教程網 All Rights Reserved