我运行以下批处理文件来建立到设备的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
远程登录会话建立后,我键入一个命令,将数据转储到最后一行代码中指定的Datacast.log。我希望以某种方式在批处理文件中包含命令(例如“M3,1,999”),但我找不到类似的示例。
使用批处理文件可以做到这一点吗?
发布于 2012-11-03 01:50:13
也许是这样的?
创建一个批处理以连接到远程登录并运行脚本以发出命令- source
批处理文件(名为Script.bat ):
:: Open a Telnet window
start telnet.exe 192.168.1.1
:: Run the script
cscript SendKeys.vbs
命令文件(名为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 " "
发布于 2014-07-06 21:53:12
如果不使用另一个脚本(需要键盘焦点),microsoft telnet.exe
是不可脚本化的,如这个问题的另一个答案所示,但有一个免费的
Telnet Scripting Tool v.1.0 by Albert Yale
你可以在谷歌上搜索它,它既是可脚本化的,也是可记录的,可以从批处理文件中启动,而不需要键盘焦点。
当使用键盘焦点时,telnet.exe和第二个脚本的问题在于,如果在脚本运行时有人正在使用计算机,则脚本很可能会由于鼠标点击和键盘使用而失败。
发布于 2013-04-11 00:36:30
我想出了一种远程登录到服务器并更改文件权限的方法。然后将文件通过FTP传输回您的计算机并打开它。希望这能回答你的问题,也能帮助FTP。
设置了filepath变量,以便您始终登录并cd到同一目录。您可以将其更改为提示,以便用户可以手动输入。
:: This will telnet to the server, change the permissions,
:: download the file, and then open it from your PC.
:: Add your username, password, servername, and file path to the file.
:: I have not tested the server name with an IP address.
:: Note - telnetcmd.dat and ftpcmd.dat are temp files used to hold commands
@echo off
SET username=
SET password=
SET servername=
SET filepath=
set /p id="Enter the file name: " %=%
echo user %username%> telnetcmd.dat
echo %password%>> telnetcmd.dat
echo cd %filepath%>> telnetcmd.dat
echo SITE chmod 777 %id%>> telnetcmd.dat
echo exit>> telnetcmd.dat
telnet %servername% < telnetcmd.dat
echo user %username%> ftpcmd.dat
echo %password%>> ftpcmd.dat
echo cd %filepath%>> ftpcmd.dat
echo get %id%>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat %servername%
del ftpcmd.dat
del telnetcmd.dat
https://stackoverflow.com/questions/13197376
复制相似问题