telnetlib write()函数不执行冗长的命令

时间:2014-04-10 19:06:53

标签: python python-2.7 python-3.x telnetlib

我正在尝试使用telnetlib向设备发送命令。以下是我正在使用的命令:

tn = telnetlib.Telnet("10.62.48.96")

tn.write('c:/Test/Minte/TE.exe c:/data/test/bin/Test.dll >> c:/test/test.log \r\n')

print "Read",tn.read_until('cmd.exe ', 90)

我得到的响应只是打印到Test.dll,之后没有任何内容。我怀疑write函数是否可以发送带有多个空格的命令。

我知道命令没有被执行,因为没有在目标路径上生成test.log。

响应:

C:\windows\system32>c:/Test/Minte/TE.exe c:/data/test/bin/Test.dll←[4;71H

1 个答案:

答案 0 :(得分:0)

也许它与转义字符>>有关。

http://ss64.com/nt/syntax-esc.html

tn.write('"c:/Test/Minte/TE.exe c:/data/test/bin/Test.dll" >> c:/test/test.log \r\n')

或类似

tn.write('c:/Test/Minte/TE.exe "c:/data/test/bin/Test.dll >> c:/test/test.log" \r\n')