是否可以使用批处理文件来建立telnet会话,发送命令并将输出写入文件?

Eri*_*j78 18 telnet batch-file

我运行以下批处理文件以建立到设备的telnet会话,并创建一个文件来保存从设备中提取的信息.

CD\
COLOR 0E
CLS
@echo off
ECHO This will start the connection to the Heraeus QuicK-Lab DATACAST ENtouch. 
pause
telnet 172.17.0.16 4224 -f C:\LogFiles\Datacast.log
Run Code Online (Sandbox Code Playgroud)

建立telnet会话后,我输入一个命令,将数据转储到最后一行代码中指定的Datacast.log.我希望以某种方式在批处理文件中包含命令(例如"M3,1,999"),但我找不到类似的例子.

是否可以使用批处理文件执行此操作?

Muk*_*oel 39

也许是这样的?

创建批处理以连接到telnet并运行脚本来发出命令? 资源

批处理文件(名为Script.bat):

     :: Open a Telnet window
   start telnet.exe 192.168.1.1
   :: Run the script 
    cscript SendKeys.vbs 
Run Code Online (Sandbox Code Playgroud)

命令文件(名为SendKeys.vbs):

set OBJECT=WScript.CreateObject("WScript.Shell")
WScript.sleep 50 
OBJECT.SendKeys "mylogin{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys "mypassword{ENTER}"
WScript.sleep 50 
OBJECT.SendKeys " cd /var/tmp{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys " rm log_web_activity{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys " ln -s /dev/null log_web_activity{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys "exit{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys " "
Run Code Online (Sandbox Code Playgroud)


fox*_*ive 5

如果telnet.exe没有使用其他脚本(需要键盘焦点),微软就无法编写脚本,如此问题的另一个答案所示,但有一个免费的

Telnet Scripting Tool v.1.0 by Albert Yale

您可以谷歌搜索,哪些是可编写脚本和可记录的,并且可以从批处理文件启动而无需键盘焦点.

使用键盘焦点时telnet.exe和第二个脚本的问题是,如果有人在脚本运行时使用计算机,那么由于鼠标点击和键盘使用,脚本很可能会失败这一刻.


PA.*_*PA. 0

首先,需要注意的是。为什么要使用telnet?telnet 是一种旧协议,对于远程访问来说不安全且不切实际。它已(几乎)完全被ssh取代。

要回答您的问题,这取决于情况。这取决于您使用的 telnet 客户端。如果您使用 Microsoft telnet,则不能。Microsoft telnet 无法从批处理文件或命令行发送命令。

  • 我不想**使用 telnet,但它是连接到我们铸造厂中老式温度监控设备的唯一方法。我正在使用 Microsoft telnet 客户端,因此看起来简单的批处理文件不是一个选项。 (6认同)
  • 有许多 telnet 服务尚未被 SSH 取代。理想情况下,如果可用,应使用 SSH,但并非总是如此:( (6认同)