📜  ubuntu 获取进程的 pid - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:35:26.681000             🧑  作者: Mango

Ubuntu 获取进程的 PID - Shell Bash

在 Ubuntu 中,有时候我们可能需要获取某个程序的进程 PID,以便进行进一步的操作,比如终止进程或者查看进程的详细信息。本文将介绍如何使用 Shell Bash 在 Ubuntu 中获取进程 PID。

ps 命令

ps 命令可以用来查看进程列表。默认情况下,它只显示当前用户的进程。要显示系统中所有进程,可以使用以下命令:

ps aux

其中,a 表示显示所有进程,u 表示以详细格式显示进程信息,x 表示显示没有控制终端的进程。

该命令会输出类似以下格式的信息:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.1 170016  4960 ?        Ss   11月15   0:10 /sbin/init splash
root         2  0.0  0.0      0     0 ?        S    11月15   0:00 [kthreadd]
root         4  0.0  0.0      0     0 ?        I<   11月15   0:00 [kworker/0:0H]
...

其中,PID 表示进程 ID。我们可以根据命令的输出来搜索我们想要获取的进程 PID。

pgrep 命令

pgrep 命令可以根据进程名查找进程 PID。例如,以下命令可以查找名为 nginx 的进程的 PID:

pgrep nginx

如果有多个同名进程,会返回多个 PID。可以使用以下命令列出返回的所有 PID:

pgrep -d, nginx

其中,-d, 表示使用逗号分隔 PID。

pidof 命令

pidof 命令与 pgrep 类似,也可以根据进程名查找进程 PID。例如,以下命令可以查找名为 apache2 的进程的 PID:

pidof apache2

如果有多个同名进程,会返回多个 PID。可以使用以下命令列出返回的所有 PID:

echo $(pidof apache2)

其中,echo 命令可以将多个 PID 以空格分隔的方式输出。

结论

本文介绍了如何使用 Shell Bash 在 Ubuntu 中获取进程 PID。ps、pgrep 和 pidof 命令都是常用的获取进程 PID 的工具,可以根据实际需求选择使用。