如何找出进程在 Linux 中运行的 PHP 脚本?

Posted

技术标签:

【中文标题】如何找出进程在 Linux 中运行的 PHP 脚本?【英文标题】:How can I find out which PHP script a process is running in Linux? 【发布时间】:2012-03-17 02:55:01 【问题描述】:

使用 FastCGI 处理程序运行 Linux、Apache、php 5.3。

是否有可能找出正在为 linux 进程执行的脚本?我一直在谷歌上搜索,并没有找到任何有用的东西。

【问题讨论】:

【参考方案1】:
pstree | grep php
ps aux | grep php
ps xuww | grep php
...

【讨论】:

如果您将 php 作为 Apache 模块运行,您不会以这种方式看到任何内容,您只能看到 Apache 进程 你需要使用ps aux | grep apache 用于 apache 进程【参考方案2】:

在一个 SSH 窗口中:

telnet localhost 80

在另一个中,找出端口号:

lsof -p `pidof telnet`

然后,找出过程:

netstat -nap | grep port

最后:

strace -o /tmp/output -f -r -s4096 -p PID

将按顺序向您显示当您与服务器建立 httpd 连接时运行的每个进程。如果您搜索此列表,您会找到您的 PHP 脚本。

【讨论】:

【参考方案3】:

只需使用:

ps aux | grep php

向您展示使用其路径运行的 php 脚本。

【讨论】:

【参考方案4】:

也许你可以试试这个!

ps ax | grep *.php

【讨论】:

【参考方案5】:

您可以为此使用pgrep,例如

pgrep -l php

或:

pgrep php && echo PHP script is running || echo PHP script is NOT running

【讨论】:

以上是关于如何找出进程在 Linux 中运行的 PHP 脚本?的主要内容,如果未能解决你的问题,请参考以下文章

如何找出CMD.exe进程在远程计算机上运行的脚本?

如何找出我的 linux 应用程序的内存占用?

如何将我的php脚本以守护进程的方式一直运行

在给定时间后自动终止Linux进程/ php脚本

linux 下写 shell kill掉运行时间超过5分钟的PHP进程

linux 下写 shell kill掉运行时间超过5分钟的PHP进程