【问题标题】:telnetlib capabilities to run remotely shell commandstelnetlib 远程运行 shell 命令的能力
【发布时间】:2014-06-02 17:20:07
【问题描述】:

telnet library for Python prgramming 语言是否能够处理我们通常在终端上录制的所有 shell 命令(UNIX 机器,特别是在我的情况下是 Ubuntu)?

换一种方式问:我可以在远程 Ubuntu 服务器上使用telnetlib 库执行我在本地运行的所有命令吗?还是这个库只处理很短的命令列表?

【问题讨论】:

  • 如果您想真正做一些有用的事情,请使用 ssh。
  • @BurhanKhalid 所以 telnet 不能支持命令?
  • 见@Serg 的回答。 Telnet 只是您发送文本的管道。另一端的文本会发生什么不受 telnet 控制。 telnet 没有“命令”,它只是一个连接——你可以在其中输入任何无意义的垃圾,telnet 会很高兴地通过连接发送它。它不是一个remote shell。

标签: python telnet remote-access


【解决方案1】:

Python telnet lib 没有命令的概念:它只允许您将字符串传递给远程主机并获得答案。 所以你可以轻松:

  • 连接到远程主机并获得一个shell
  • 用你想要的任何命令与这个 shell 交互

简而言之,您可以通过直接 telnet 连接做您想做的事情。

只需避免使用 vi 或 emacs 等全屏应用程序,或任何 ncurses 应用程序:理论上可行,但确实很棘手......

【讨论】:

  • 但是在这个例子中执行了一个命令:effbot.org/librarybook/telnetlib.htm
  • @begueradj 你是对的,在远程主机上执行了一个命令。但是 telnetlib 只发送了字符串ls librarybook\n,而实际执行命令的是远程主机上的 shell。如果该命令使用来自标准输入的输入,您将通过 telnetlib 通过其他行提供其输入。正如我已经说过的,您可以使用 telnetlib 完成通过直接 telnet 连接可以完成的操作,不多也不少。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-11-10
  • 2017-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-03
相关资源
最近更新 更多