C++下Telnet程序,回显字符问题

mfkiu 2006-06-15 11:57:55
在协商时,除了指定终端类型和回显外,其它协商都拒绝。telnet服务务是HP-UNIX。
C++通过socket向服务器发送指令:KPIV16=`ls ~/cdr/st_cdr/div_file/*${KPIV1}*/*.* |wc -l`
其中KPIV16,KPIV1为定义的变量。socket接收数据,其回结果为:`ls ~/cdr/st _cdr/div _file/*${KPIV1}*/*.*,下划线前面是字符:0x20,0x08。返回字符串最后一个*后面有0x0d、0x00,然后后面又是一串别的字符,中间也有很多0x20,0x08。最后又出现|wc -l`。我处理字符串是,遇到0x00就认为结束了,实际上后面还有,回显字符串都不能正确接收,所以telnet正确不能正确解析指令执行情况。而我在另外一台HP-UNIX上执行却正确,下划级之前也不会出来0x20,0x08。

请问哪位有没有遇到类似问题,这会是什么原因呢?
...全文
770 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pacman2000 2006-08-18
  • 打赏
  • 举报
回复
终端模拟方式是啥?vt100吗?键盘设置呢?
mfkiu 2006-06-19
  • 打赏
  • 举报
回复
我现在在telnet连接协商时,禁止回显;AIX机器上结果正确,没有回显;HP-UNIX还和原来一样。汗……
mfkiu 2006-06-16
  • 打赏
  • 举报
回复
我使用SecureCRT 4.0工具Telnet到这台主机上,向主机发送指令,主机回显指令,'_'前也会出现0x20,0x08。但是,执行可以完整地返回回来,执行中间不会被插入别的数据。我是通过netdata选择直接看工具和主机交互数据来查看的,应该不会出错。

程序可以正确执行的主机信息为:HP-UX kpi B.11.11 U 9000/800 (tc)
mfkiu 2006-06-16
  • 打赏
  • 举报
回复
我使用perl脚本Net-Telnet-3.03包,Telnet到这点主机上,执行的结果和我C++程序相同。
主机的信息是:HP-UX app01 B.11.11 U 9000/800 (tj)
laomai 2006-06-16
  • 打赏
  • 举报
回复
这个问题有点意思。楼主你发短消息给我,咱们一起研究研究,呵呵

24,855

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧