成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux中4個簡單的找出進程ID(PID)方法

系統 Linux
每個人都知道 PID,究竟什么是 PID?為什么你想要 PID?你打算用 PID 做什么?你腦子里有同樣的問題嗎?如果是這樣,你就找對地方了解這些細節了。

[[220478]]

每個人都知道 PID,究竟什么是 PID?為什么你想要 PID?你打算用 PID 做什么?你腦子里有同樣的問題嗎?如果是這樣,你就找對地方了解這些細節了。

我們查詢 PID 主要是用來殺死一個沒有響應的程序,它類似于 Windows 任務管理器一樣。 Linux GUI 也提供相同的功能,但 CLI 是執行 kill 操作的有效方法。

 

什么是進程 ID?

PID 代表進程標識號process identification,它在大多數操作系統內核(如 Linux、Unix、macOS 和 Windows)中使用。它是在操作系統中創建時自動分配給每個進程的唯一標識號。一個進程是一個正在運行的程序實例。

建議閱讀: 如何查看 Apache Web 服務器在 Linux 中的運行時間

除了 init 進程外其他所有的進程 ID 每次都會改變,因為 init 始終是系統上的***個進程,并且是所有其他進程的父進程。它的 PID 是 1。

PID 默認的***值是 32768。可以在你的系統上運行 cat /proc/sys/kernel/pid_max 來驗證。在 32 位系統上,32768 是***值,但是我們可以在 64 位系統上將其設置為*** 222(約 4 百萬)內的任何值。

你可能會問,為什么我們需要這么多的 PID?因為我們不能立即重用 PID,這就是為什么。另外為了防止可能的錯誤。

系統正在運行的進程的 PID 可以通過使用 pidofpgreppspstree 命令找到。

 

方法 1:使用 pidof 命令

pidof 用于查找正在運行的程序的進程 ID。它在標準輸出上打印這些 id。為了演示,我們將在 Debian 9(stretch)系統中找出 Apache2 的進程 ID。

  1. # pidof apache2
  2. 3754 2594 2365 2364 2363 2362 2361

從上面的輸出中,你可能會遇到難以識別進程 ID 的問題,因為它通過進程名稱顯示了所有的 PID(包括父進程和子進程)。因此,我們需要找出父 PID(PPID),這是我們要查找的。它可能是***個數字。在本例中,它是 3754,并按降序排列。

 

方法 2:使用 pgrep 命令

pgrep 遍歷當前正在運行的進程,并將符合選擇條件的進程 ID 列到標準輸出中。

  1. # pgrep apache2
  2. 2361
  3. 2362
  4. 2363
  5. 2364
  6. 2365
  7. 2594
  8. 3754

這也與上面的輸出類似,但是它將結果從小到大排序,這清楚地說明父 PID 是***一個。在本例中,它是 3754

注意: 如果你有多個進程的進程 ID,那么在使用 pidofpgrep 識別父進程 ID 時就可能不會很順利。

 

方法 3:使用 pstree 命令

pstree 將運行的進程顯示為一棵樹。樹的根是某個 pid,如果省略了 pid 參數,那么就是 init。如果在 pstree 命令中指定了用戶名,則顯示相應用戶擁有的所有進程。

pstree 會將相同的分支放在方括號中,并添加重復計數的前綴來可視化地合并到一起。

  1. # pstree -p | grep "apache2"
  2. |- apache2(3754) -|-apache2(2361)
  3. | |-apache2(2362)
  4. | |-apache2(2363)
  5. | |-apache2(2364)
  6. | |-apache2(2365)
  7. | `-apache2(2594)

要單獨獲取父進程,請使用以下格式。

  1. # pstree -p | grep "apache2" | head -1
  2. |- apache2(3754) -|-apache2(2361)

pstree 命令非常簡單,因為它分別隔離了父進程和子進程,但這在使用 pidofpgrep 時命令不容易做到。

 

方法 4:使用 ps 命令

ps 顯示活動進程的選擇信息。它顯示進程 ID(pid=PID)、與進程關聯的終端(tname=TTY)、以 [DD-]hh:mm:ss 格式(time=TIME)顯示的累計 CPU 時間、以及執行名(ucmd = CMD)。輸出默認是未排序的。

  1. # ps aux | grep "apache2"
  2. www-data 2361 0.0 0.4 302652 9732 ? S 06:25 0:00 /usr/sbin/apache2 -k start
  3. www-data 2362 0.0 0.4 302652 9732 ? S 06:25 0:00 /usr/sbin/apache2 -k start
  4. www-data 2363 0.0 0.4 302652 9732 ? S 06:25 0:00 /usr/sbin/apache2 -k start
  5. www-data 2364 0.0 0.4 302652 9732 ? S 06:25 0:00 /usr/sbin/apache2 -k start
  6. www-data 2365 0.0 0.4 302652 8400 ? S 06:25 0:00 /usr/sbin/apache2 -k start
  7. www-data 2594 0.0 0.4 302652 8400 ? S 06:55 0:00 /usr/sbin/apache2 -k start
  8. root 3754 0.0 1.4 302580 29324 ? Ss Dec11 0:23 /usr/sbin/apache2 -k start
  9. root 5648 0.0 0.0 12784 940 pts/0 S+ 21:32 0:00 grep apache2

從上面的輸出中,我們可以根據進程的啟動日期輕松地識別父進程 ID(PPID)。在此例中,apache2 啟動于 Dec 11,它是父進程,其他的是子進程。apache2 的 PID 是 3754。 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2019-12-16 10:43:38

Linux內存消耗進程

2019-12-16 09:10:38

Linux中央處理器進程

2019-12-16 11:00:04

LinuxCPU進程

2019-11-06 15:58:54

Linux內存消耗進程

2010-03-05 13:31:02

Linux進程文件路徑

2010-06-11 13:15:51

2015-09-29 09:34:53

LinuxCPU內核

2017-01-13 15:29:06

Linux二進制命令方法

2010-06-04 14:31:59

Linux 查看進程

2021-03-08 08:55:41

Linux內存命令

2012-08-07 11:28:13

卸載linux

2010-06-28 14:52:30

cron進程

2020-10-10 11:02:09

Linux 系統 數據

2010-03-02 09:51:22

Linux進程操作命令

2010-06-13 15:10:19

Linux 查看進程

2009-06-17 09:06:59

Unix系統資源進程

2012-08-13 10:16:34

IBMdW

2015-11-03 14:56:11

內置模塊信息Linux

2019-06-04 11:17:39

Windows Linux命令

2019-08-23 08:54:32

LinuxMySQLBSD
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一级黄色片在线免费观看 | 国产探花在线精品一区二区 | 久久久91精品国产一区二区三区 | 欧美黑人国产人伦爽爽爽 | 亚洲 中文 欧美 日韩 在线观看 | 韩日有码| av中文字幕在线播放 | 久草电影网 | 日韩精品国产精品 | 在线中文视频 | 午夜精品一区二区三区在线观看 | 女同av亚洲女人天堂 | 黄网免费看 | 黄片毛片在线观看 | 久久精品国产一区二区电影 | 亚洲视频欧美视频 | 91精品国产91久久久久久吃药 | 久久婷婷麻豆国产91天堂 | 欧美成人精品在线 | 一本大道久久a久久精二百 欧洲一区二区三区 | 成年人免费在线视频 | 91精品国产高清一区二区三区 | 国产一区中文 | 亚洲高清在线视频 | 久久出精品 | 欧美free性| 国产精品一区在线观看 | 亚洲1区 | 国产视频久久久 | 国产福利久久 | 国产精品久久久久久久午夜 | 久久综合影院 | 久久高清精品 | av在线播放一区二区 | 中文字幕不卡在线观看 | 91麻豆精品国产91久久久久久久久 | 国产乱码一二三区精品 | 午夜精品久久久久久久 | 久久久久久国产精品免费免费 | 国产精品精品视频一区二区三区 | 亚洲免费网址 |