首页 > 解决方案 > 是否可以将输出保存到文件中?

问题描述

试图使用 phpseclib。我正在连接到 SSH(不是 unix 服务器)。使用命令“show onu info”显示所有连接的设备(它显示 MAC 地址)

我想要的只是计算连接了多少设备。我的想法是将输出保存到 txt 文件。可能吗?或者有没有更好的方法来计算包含单词“M0D9.....”的行?

谢谢

code:
//phpseclib:
// myserver
include('Net/SSH2.php');
$ssh = new Net_SSH2('myserverip');
$ssh->login('myusername', 'mypass') or die("Login failed");

echo $ssh->read('myusername@myserverip:~$');
$output = $ssh->write("show onu info\n");
echo $ssh->read('myusername@myserverip:~$');

echo "<br /><br /><br />";

不知道该怎么数。

#

试过str_word_count:

code:
//phpseclib:
// myserver
include('Net/SSH2.php');
$ssh = new Net_SSH2('myserverip');
$ssh->login('myusername', 'mypass') or die("Login failed");

echo $ssh->read('myusername@myserverip:~$');
$str = $ssh->write("show onu info\n");
echo $ssh->read('myusername@myserverip:~$');

echo "<br /><br /><br />";
echo substr_count($str, "M0D9");

没用。仍然显示 0 但有 15 条 M0D9 线。

标签: phpseclib

解决方案


你不能像一般的unix案例一样将机器的标准输出“管道”到文本文件吗?然后在 unix 中,您可以使用 grep 来计算出现次数。可以提供有关服务器上操作系统的更多信息吗?


推荐阅读