博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python3+ros+telnet+telnetlib
阅读量:5293 次
发布时间:2019-06-14

本文共 1341 字,大约阅读时间需要 4 分钟。

利用python3的telnetlib模块

远程登录ros,输入帐号密码,然后执行命令,并导出结果到txt文本: 不过实际操作这种方式不行,因为telnet导出来的文本文件,带颜色编码,根本无法看哦。

# !/usr/bin/env python# -*- coding:utf-8 -*-# Author:lzdimport timedef do_telnet(Host, username, password, finish, commands):    import telnetlib    '''''Telnet远程登录:Windows客户端连接Linux服务器'''    # 连接Telnet服务器    tn = telnetlib.Telnet(Host, port=23510)    tn.set_debuglevel(2)#开启telnet调试模式    # 输入登录用户名    tn.read_until(b'Login: ')    tn.write(username + b'\n')    # 输入登录密码    tn.read_until(b'Password:')    tn.write(password + b'\n')    # 登录完毕后执行命令    tn.read_until(finish)    #print(commands)    tn.write(commands+b'\r\n')    time.sleep(10)#这里一定要等待10秒,因为你write命令以后,会等待很长时间,原因不详。    # 执行完毕后,终止Telnet连接(或输入exit退出)    tn.read_until(finish)    tn.write(b'quit\r\n')    #time.sleep(3)    result = tn.read_all()    file_object = open('result.txt', 'wb')    file_object.write(result)    file_object.close()    print('Finish')    tn.close()if __name__ == '__main__':    # 配置选项    Host = '192.168.200.100'  # Telnet服务器IP    username = 'xxxx'.encode(encoding='utf-8')  # 登录用户名    password = 'xxxx'.encode(encoding='utf-8')  # 登录密码    finish = '>'.encode(encoding='utf-8')  # 命令提示符    commands = 'ping 192.168.12.254 c 10'.encode(encoding='utf-8')    do_telnet(Host, username, password, finish, commands)

 

转载于:https://www.cnblogs.com/itfat/p/7445198.html

你可能感兴趣的文章
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
窥视SP2010--第一章节--SP2010开发者路线图
查看>>
MVC,MVP 和 MVVM 的图示,区别
查看>>
C语言栈的实现
查看>>
代码为什么需要重构
查看>>
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
统计单词,字符,和行
查看>>
Python-S9-Day127-Scrapy爬虫框架2
查看>>
模运算
查看>>
python多线程的使用
查看>>
使用Chrome(PC)调试移动设备上的网页
查看>>
使用gitbash来链接mysql
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
右侧导航栏(动态添加数据到list)
查看>>
81、iOS本地推送与远程推送详解
查看>>
C#基础_注释和VS常用快捷键(一)
查看>>
虚拟DOM
查看>>