Linux 根据名称查找进程
Linux 计算机程序或与其他应用程序同时运行的程序称为进程。Linux 中的子进程是由另一个进程创建的进程。父进程是在 Linux 操作系统上创建了一个或多个子进程的进程。进程标识符(进程 ID 或 PID)是 Linux 或 Unix 操作系统内核使用的数字。它用于唯一地标识活动进程。
教程详细信息 | |
---|---|
难度等级 | 简单的 |
Root 权限 | 是的 |
要求 | Linux 终端 |
类别 | 流程管理 |
操作系统兼容性 | Alma • Alpine • Arch • Debian • Fedora • Linux • Mint • openSUSE • Pop!_OS • RHEL • Rocky • Stream • SUSE • Ubuntu |
预计阅读时间 | 3 分钟 |
在 Linux 上按名称查找进程的步骤
- 打开终端应用程序。
- 键入以下命令来查找 Firefox 进程的 PID:
pidof firefox - 或者将 ps 命令与grep 命令一起使用,如下所示:
ps aux | grep -i firefox - 要根据名称查找或单个进程,请使用以下语法:
pgrep firefox
Linux 使用 pgrep 命令按名称查找进程
pgrep 命令查看当前正在运行的进程,并列出符合筛选条件的进程 ID。所有条件都必须匹配。例如,它将仅列出名为 sshd 且由 root 用户拥有的进程,运行:
$ pgrep -u root sshd
只需使用 pgrep 命令查找 firefox 进程的 pid:
$ pgrep firefox
如何使用“ps aux | grep 命令”
ps 命令显示有关所选活动进程的信息:
$ ps aux
使用grep 命令或egrep 命令在 Linux 中筛选出进程。例如:
或者使用以下带有 shell 管道的egrep 命令。例如,查找 mysqld 和 nginx 进程:
该选项要求 ps 命令按命令名称选择 PID:
$ ps aux | grep -i 'search-term'
$ ps aux | grep 'firefox'
$ ps aux | grep 'sshd'
$ ps aux | egrep -i 'mysqld|nginx'
$ sudo ps aux | egrep -i 'sshd|mysqld|nginx'
-C
$ ps -fC firefox
$ ps -fC chrome
使用 pidof 命令获取 Linux 上任意命名程序的 PID
pidof 命令查找指定程序(如 sshd、firefox 等)的进程 ID (PID)。例如:
示例输出:
$ pidof sshd
$ pidof firefox
关于 top/htop 命令的说明
要显示 Linux 进程,请使用 top 命令或 htop 命令:
$ top
或者
$ htop
使用 top 或 htop 仅显示给定用户的进程:
想要使用名称在 top 或 htop 中查看和选择特定进程?
$ sudo top -u vivek
$ sudo top -u marlena
参见
- 显示 Linux 中所有正在运行的进程
- Linux / UNIX:查找或确定进程 pid 是否正在运行
- Unix / Linux:查找有关进程的信息,包括所有命令行参数
- Linux:找出哪个进程正在监听端口
您是否想使用名称查看并选择 top 或 htop 中的特定进程?例如,尝试使用以下语法按名称选择 firefox 和 nginx Linux 进程:
该选项传递给 pgrep 命令以设置用于分隔输出中每个进程 ID (PID) 的字符串,并且该输出作为 top 或 htop 命令的输入。
$ top -p "$(pgrep -d, firefox)"
$ htop -p "$(pgrep -d, nginx)"
-d
总结
这个快速教程描述了一个进程以及如何通过名称查看 Linux 进程。
获得更多帮助
使用 man 命令或 help 命令阅读以下命令的手册页:
$ man pgrep
$ man pidof
$ man ps