Telnet Response在~50个字符后面包含\ r \ n

时间:2016-08-30 13:15:55

标签: c# linux telnet

我正在与Linux设备进行telnet连接(使用c#代码)并执行一些命令,其中命令超过50个字符。该命令已成功执行,但telnet响应包含大约65个字符后的\ r \ n,导致问题。

脚本期望响应作为一行中的完整命令和下一行中的命令输出。但是我得到的东西如下:

发送命令:/ root / supplicants / wpa_cli -i p2p0 p2p_peer 00:11:22:33:44:55

回复:/ root / supplicants / wpa_cli -i p2p0 p2p_peer 00:1 1:22:33:44:55 00:11:22:33:44:55

如何解决此问题?为什么在某些字符后添加\ r \ n?

1 个答案:

答案 0 :(得分:0)

C#字符串中的

\r\n表示一个新行(这些也有描述here)。我认为可能发生的事情是telnet始终将响应格式化为具有设置最大长度的行。您是否可以通过删除所有出现的\r\n来尝试向重新格式化响应的脚本添加内容?

E.g。您可以使用String.Replace

将这些替换为空白字符串

[编辑]:我不知道是否可以请求具有不同行长度的响应。我看到here有一个使用Telnet的toggle clrf选项,但这可能只是用于发送请求。