gpt4 book ai didi

linux - 如何从 bash 获取 telnet 命令的输出?

转载 作者:可可西里 更新时间:2023-11-01 11:12:03 30 4
gpt4 key购买 nike

我试图从 Linux 获取在我的 Windows 机器上运行的进程列表,但是当我在脚本中执行此操作时,我没有获得任何输出。如果我手动使用 telnet 并使用命令 pslist,我会得到完整的进程列表,但不在我的脚本中。

这是 bash 脚本(减去变量):

( echo open ${host}
sleep 1
echo ${user}
sleep 3
echo ${pass}
sleep 1
echo pslist
sleep 2
) | telnet

我只是用 bash pslist.sh 调用它,输出是这样的:

telnet> Trying ip_address...
Connected to ip_address.
Escape character is '^]'.
Welcome to Microsoft Telnet Service

login: my_loginmy_passwordpslistConnection closed by foreign host.

我做错了什么?

最佳答案

telnet 编写脚本是出了名的棘手。如果您在命令之间添加更长时间的 sleep ,您可能会更频繁地取得成功。

更好的方法是切换到适当的可编写脚本的客户端,即。 netcat(又名 nc)。更好的方法是在您的 Windows 机器上安装一个 SSH 服务器(也许为了安全起见,只允许从您的网络内部访问它)并使用无密码身份验证进行设置。然后你可以简单地 ssh user@ipaddress pslist

关于linux - 如何从 bash 获取 telnet 命令的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34976314/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com