1
我知道通過stty -a
命令找出終端的尺寸參數是相當容易的。當使用本地CLI PHP腳本時,通過system()
左右抓取該輸出沒有任何問題。通過PHP CLI確定終端線路/列隊
但我想通過一個從ssh命令啓動的php腳本來做同樣的事情。可悲的是,所有stty
永遠返回是:
stty: standard input: Invalid argument.
調用代碼:
exec('stty -a | head -n 1', $query);
echo $query[0];
所以,問題是:如果我能輸出到終端,並從中讀取輸入(例如可以fread()
從?STDIN和fwrite()
到STDOUT在PHP,不應該stty
也有有效的STDIN和STDOUT
我應該提到,我試圖避免使用類似ncurses的東西來獲得屏幕大小。 – eFrane 2012-04-15 16:24:15
不是100%確定,但對終端大小執行exec可能會導致大小不正確,因爲它將是腳本允許的大小,而不是執行終端的大小。 – ChrisK 2012-04-15 16:28:40
這將導致請求未分配的終端的大小,因爲SSH本身不會爲直接調用的命令分配終端。嗯。 – eFrane 2012-04-15 16:32:04