- 论坛徽章:
- 0
|
终于找到原因了,原来只是个小小的问题,
偶然百度到 xp和linux的转义字符有区别,xp下'\n'不能识别为回车,要用'\r\n'
试了一下,果然是真的,并不是回显的问题,而是回车没有输入正确。
悲剧的,就这么个简单的脚本,折磨我这么久
# -*- coding: utf-8 -*-
#python3.2
# 配置选项
HOST = b'100.100.100.11' # Telnet服务器IP
USERNAME = b'test' # 登录用户名
PASSWORD = b'test' # 登录密码
FINISH = b't>' # 命令提示符(标识着上一条命令已执行完毕)
COMMD = b'mkdir test01' # 预设命令
# Telnet登录
tn = telnetlib.Telnet()
tn.open(HOST,23) # 连接Telnet服务器
a=tn.read_until(b'login:')
#print(b'a: ' +a)
tn.write(USERNAME + b'\r\n') # 输入登录用户名,服务器是xp必须用b'\r\n'
b=tn.read_until(b'word:')
#print(b'b: ' +b)
tn.write(PASSWORD + b'\r\n') # 输入登录密码
# 执行命令
c2=tn.read_until(FINISH)
#print(b'c2:')
#print(c2.decode('GB2312'))
tn.write(COMMD + b'\r\n')
# 终止Telnet连接
e=tn.read_until(FINISH)
#print(e.decode('GB2312'))
tn.close() |
|