将参数传递给持久的 telnet 会话

Far*_*han 0 linux whois

我有一个 whois 服务,它允许我 telnet 到它并保持 telnet 连接打开而没有任何时间限制。我必须通过该 telnet 会话执行数千个 whois。例如,对于域名,我做

echo "mydomain.com"; sleep 5| telnet whoismyserver.com 3454
Run Code Online (Sandbox Code Playgroud)

我无法为数千个 whois 运行此命令。那么有什么方法可以让 telnet 会话保持打开状态并将参数传递给它吗?

我想保持持久的 telnet 连接。并将参数传递给它。那可能吗?例如,在上面的命令中,我只能传递“echo domain”的参数一次,但我想传递很长的 Echos 列表,但间隔不同,而且也只能打开持久的 telnet 会话。我想在不同的时间将所有命令一一传递给一个 telnet 会话

mfi*_*nni 5

为什么你不能在本地机器上运行 whois 和脚本/批处理?或者只是 telnet 到另一个系统并在那里编写脚本?必须通过 telnet 路由到另一个系统来执行此操作似乎很糟糕。

话虽如此,这就是Expect 的用途 (points for @larsks) ,所以如果您必须这样做,请使用它。

/edit - 我们不是你的谷歌,但这是一个开始:http : //expect.sourceforge.net/

  • 所以,正如@larsks 所说,我重复了一遍,使用 Expect。这就是它的作用。它会打开一个 telnet 连接,您可以通过编程方式与之交互。 (2认同)