您可以在上面 ps 命令的输出中看到 Nginx 进程。这个命令显示了将近 300 行,但是我在这个例子中缩短了它。可以想象,试图处理 300 行过程信息有点混乱。我们可以将这个输出输送到 grep ,过滤一下仅显示 nginx。
alan@workstation:~$ ps -ef |grep nginx alan 20520 1454 0 10:39 ? 00:00:00 nginx: master process nginx alan 20521 20520 0 10:39 ? 00:00:00 nginx: worker process
确实更好了。我们可以很快看到,Nginx 有 20520 和 20521 的 PID。
PGREP
pgrep 命令更加简化单独调用 grep 遇到的问题。
alan@workstation:~$ pgrep nginx 20520 20521
假设您在一个托管环境中,多个用户正在运行几个不同的 Nginx 实例。您可以使用 -u 选项将其他人排除在输出之外。
alan@workstation:~$ pgrep -u alan nginx 20520 20521
PIDOF
另一个好用的是 pidof 。此命令将检查特定二进制文件的 PID,即使另一个同名进程正在运行。为了建立一个例子,我将我的 Nginx 复制到第二个目录,并以相应的路径前缀启动。在现实生活中,这个实例可能位于不同的位置,例如由不同用户拥有的目录。如果我运行两个 Nginx 实例,则pidof 输出显示它们的所有进程。
alan@workstation:~$ ps -ef |grep nginx alan 20881 1454 0 11:18 ? 00:00:00 nginx: master process ./nginx -p /home/alan/web/prod/nginxsec alan 20882 20881 0 11:18 ? 00:00:00 nginx: worker process alan 20895 1454 0 11:19 ? 00:00:00 nginx: master process nginx alan 20896 20895 0 11:19 ? 00:00:00 nginx: worker process
(编辑:520站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|