0
我想在nginx access.log中找到'foo'的最近訪問權限,當我通過命令行運行以下命令時,它的工作方式與預期的一樣,並且非常快速。我怎樣才能得到grep管道通過tac返回值而不殺死php exec()函數中的進程?
$output = exec('tac /var/log/nginx/access.log | grep -m1 "foo"');
echo $output;
然而,運行它通過PHP的exec()
功能,其30次後,一些秒。如果我殺掉了服務器上的tac
進程,那麼只要進程被終止,PHP就會輸出預期的結果。我曾嘗試
grep "foo" /var/log/nginx/access.log | tail -1
但那要花費整整22秒內找到結果,而不是在命令行中第二個的一小部分,但同樣不會通過PHP exec()
功能工作。
感謝您提供任何幫助。
是否有任何問題的答案提供了有益的?你應該**提高** _所有答案是有幫助的,**標記接受**最好回答你的問題的答案。這會將問題標記爲「封閉」,並在網站上給您一些聲譽。請參閱https://stackoverflow.com/help/someone-answers – miken32