透過命令列啟動 php 腳本 - 執行後保持終端機視窗打開

透過命令列啟動 php 腳本 - 執行後保持終端機視窗打開

哦,我的女朋友非常喜歡我啟動 php 腳本!她說,他們有一些特別之處…

因此,我編寫了此腳本以透過 CLI(命令列介面)運行 - 因此它在本地運行,而不是在 Web 伺服器上運行。

它通過右鍵單擊>打開>在終端機中運行來正常啟動,但在執行後立即關閉。**有沒有辦法讓終端機視窗保持開啟?

當然,我可以透過終端機視窗啟動它 - 該視窗將保持開啟 - 但我正在尋找一鍵操作。我使用了 bash 腳本,$SHELL但這不起作用(請參閱下面的程式碼)。

到目前為止,我唯一想到的就是sleep(10);給我的女兒 10 秒鐘的時間來檢查輸出。不過,我寧願手動關閉終端機視窗。

#!/usr/bin/php -q
<?php

    echo "Hello World \n";

    # wait before closing terminal window
    sleep(10);

    # the following line doesn't work
    $SHELL;

?>

(PHP 5.4.6-1ubuntu1.2 (cli)(建置時間:2013 年3 月11 日14:57:54)版權所有(c) 1997-2012 PHP Group Zend Engine v2.4.0,版權所有(c) 1998 -2012 Zend Technologies )

答案1

作為塞勒姆說在這則評論,你正在混合 bash 和 php 程式碼。您可以使用shell_execphp 函數來防止這種情況:

#!/usr/bin/php -q
<?php

    echo "Hello World \n";

    # prevent to close terminal using php
    shell_exec('$SHELL');

?>

細繩shell_exec( 細繩$cmd— 透過 shell 執行指令並以字串形式傳回完整的輸出。

shell_exec

相關內容