3

我想使用 telnet 在远程机器上执行命令,

telnet xxxx 命令或类似命令

我想将其作为 Python ( subprocess )脚本的一部分包含在内,因此需要将它放在一行中。或者,还有其他方法可以做到这一点吗?

任何帮助表示赞赏。

谢谢。

4

3 回答 3

1

与其依赖subprocess,您可以尝试使用 Python 的内置telnetlib函数。

文档中提供了一个几乎完全符合您要求的完整示例:http: //docs.python.org/library/telnetlib.html#telnet-example

我个人也想看看目标系统上是否可以使用 SSH。您不仅可以使用安全连接,还可以设置 SSH 密钥并使用 SSH 的内置支持来执行单个命令(例如ssh user@example.com ls -l)。

于 2012-04-23T12:46:22.903 回答
1
#!/bin/sh
empty -f -i in -o out telnet foo.bar.com
empty -w -i out -o in "ogin:" "luser\n"
empty -w -i out -o in "assword:" "TopSecret\n"
empty -s -o in "who am i\n"
empty -s -o in "exit\n"

http://empty.sourceforge.net/

于 2015-02-11T06:26:17.380 回答
0

也许这个解决方案会很有用,但正如其中所述,如果您需要用户/密码身份验证,它将无法工作。

为了跳过手动用户/密码验证,设置 ssh 密钥是可行的方法。这里有一个简短的解释:SSH to a server without password for Admin Ease

于 2012-04-23T13:23:38.387 回答