使用Python创建telnet可访问的CLI shell

2024-05-15 08:26:58 发布

您现在位置:Python中文网/ 问答频道 /正文

这是一个模拟思科交换机接口的项目。我基本上想创建一个命令行接口,我可以远程登录。在

如果有人熟悉思科交换机这主要是如何控制他们。我想在这些开关上生成命令的模拟输出。我尝试使用twisted框架和python的cmd选项。在

但是我只需要一些简单的东西,基本上是一个可以远程登录到cli的模块,然后我可以在不同的模块中使用我认为合适的命令,然后显示命令。在

如果有人能告诉我正确的方法,或者我能用什么,我会很感激。(telnet选项不是强制性的)


Tags: 模块项目方法命令行命令cmd框架cli
1条回答
网友
1楼 · 发布于 2024-05-15 08:26:58

This似乎是个问题;简单但可行。它是一个用Python编写的telnet服务器库。它很容易扩展;像这样:

if __name__ == '__main__':
    "Testing - Accept a single connection"
    class TNS(SocketServer.TCPServer):
        allow_reuse_address = True

    class TNH(TelnetHandler):
        def cmdECHO(self, params):
            """ [<arg> ...]
            Echo parameters
            Echo command line parameters back to user, one per line.
            """
            self.writeline("Parameters:")
            for item in params:
                self.writeline("\t%s" % item)
        def cmdTIME(self, params):
            """
            Print Time
            Added by dilbert
            """
            self.writeline(time.ctime())

    logging.getLogger('').setLevel(logging.DEBUG)

    tns = TNS(("0.0.0.0", 8023), TNH)
    tns.serve_forever()

相关问题 更多 >