2011-08-22 54 views
0

我想知道是否有人知道如何正確使用shell_exec()。我在php.ini文件中啓用了它,但它似乎不起作用。使用shell_exec()

我必須使用用戶名和密碼登錄到shell嗎?

我將如何訪問屏幕上的內容-r通過shell_exec()

P.S.我試圖在Minecraft服務器上運行list命令並返回數據。

+0

您是將php腳本作爲可執行文件運行,還是通過瀏覽器運行它? –

+0

Apache通過瀏覽器。我沒有運行.sh文件。 – Hugo

+0

你可以運行一個php文件作爲可執行文件。 –

回答

0

您不能使用shell_exec與交互式命令。由於您正在使用屏幕,只需啓用屏幕日誌並使用文件功能即可讀取在啓動屏幕的文件夾中創建的screenlog.0文件。

+0

你能否擴大..我不知道你在說什麼。對不起,我有點新手。 – Hugo

1

不,您不需要登錄到shell,shell將執行作爲執行php命令的操作系統用戶。首先,請先測試您的shell_exec是否正常運行:

<?php 
$output = shell_exec('ls -lart'); 
echo "<pre>$output</pre>"; 
?> 
+0

好的,那有效。它給了我一個文件輸出。我需要通過PHP中的shell來訪問Minecraft服務器,但是......不知道該怎麼做。 我一直在使用PuTTy在命令行中使用屏幕-r,但我不知道這是否適用於此。 – Hugo

+0

當我使用屏幕-r而不是ls -lart時,出現此錯誤:必須連接到終端。 – Hugo