我需要從.log文件中提取一些數據。我正在用awk做這件事,它工作正常 - 但現在我想將awk結果保存到變量中。我需要通過PHP爲了打開一個終端窗口,併爲此命令來獲得我所需要的:如何在php中打開終端窗口
cat apache_access.log | awk '{print $1}'
但我不知道如何做到這一點。任何人都可以告訴我如何打開連接到PHP以及如何將此命令的結果保存在變量中?
我需要從.log文件中提取一些數據。我正在用awk做這件事,它工作正常 - 但現在我想將awk結果保存到變量中。我需要通過PHP爲了打開一個終端窗口,併爲此命令來獲得我所需要的:如何在php中打開終端窗口
cat apache_access.log | awk '{print $1}'
但我不知道如何做到這一點。任何人都可以告訴我如何打開連接到PHP以及如何將此命令的結果保存在變量中?
請參考exec函數。
例子:
<?php
// outputs the username that owns the running php/httpd process
// (on a system with the "whoami" executable in the path)
echo exec('whoami');
?>
你能否更詳細地向我解釋這一點? – Evolution48
如果你不想使用PHP來分析日誌,你需要執行命令,並得到其輸出。
可以使用http://php.net/manual/ru/function.proc-open.php或從symfony的該功能使用更加人性化友好圖書館(包裝) - http://symfony.com/doc/current/components/process.html
我仍然不明白如何在php中寫入我的終端命令:/你能否以更詳細的方式向我解釋這一點? – Evolution48
你不需要用php將smth寫入終端,你需要執行命令(運行一個執行命令並獲取命令輸出的新進程)。請參閱第二個鏈接以獲得更好的理解,它使用'ls'命令執行相同的操作。 Symfony庫只是'proc_open'函數的一個包裝器 – aeryaguzov
這是有幫助的呢? https://github.com/Spudley/ApacheLogIterator – Simba