我試圖解析當前通過SSH連接到服務器的用戶的列表Linux命令的輸出,但結果是非常不規則的,所以我不得不簡單地做:解析「誰」在PHP
$users = shell_exec('who');
echo "<pre>$users</pre>";
在我讓PHP弄亂它之前,有沒有更好的方法在命令行中解析who
的輸出?我希望它包含用戶名(下面的第一列),它們連接的終端(第二列),它們連接的日期和時間(第三)以及它們連接的位置(括號內)。我猜我應該用preg_split
分割數據,但它似乎真的有時與用戶名長度,終端名稱等不規則..
(的who
一些輸出爲例):
alex tty7 2010-01-23 17:04 (:0)
alex pts/0 2010-01-30 17:43 (192.168.1.102)
root pts/1 2010-01-30 17:45 (192.168.1.102)