首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在vbscript中使用字符串变量作为telnet命令?

如何在vbscript中使用字符串变量作为telnet命令?
EN

Stack Overflow用户
提问于 2019-05-14 04:05:12
回答 1查看 1.6K关注 0票数 1

我正在尝试运行一个Powershell脚本,该脚本将调用一个批处理脚本,该脚本将启动telnet会话并运行以下命令:

代码语言:javascript
运行
AI代码解释
复制
mediaGet("gei",1)

由于这个堆栈溢出问题,是否可以使用批处理文件来建立telnet会话、发送命令并将输出写入文件?,我编写了两个脚本:

telnet.bat

代码语言:javascript
运行
AI代码解释
复制
start telnet.exe 162.100.10.10
cscript telnet.vbs

telnet.vbs

代码语言:javascript
运行
AI代码解释
复制
set OBJECT=WScript.CreateObject("WScript.Shell")
Dim cmd
cmd = "mediaGet("gei",1)
WScript.sleep 50 
OBJECT.SendKeys cmd
WScript.sleep 50 
OBJECT.SendKeys "{ENTER}" 
WScript.sleep 50 
OBJECT.SendKeys "exit{ENTER}" 
WScript.sleep 5000
OBJECT.SendKeys " "

但是,当我运行脚本时,vbs脚本无法读取变量cmd的字符串。所以我就这样改变了它:

代码语言:javascript
运行
AI代码解释
复制
cmd = "mediaGet" & chr(40) & chr(34) & "gei" & ",1" & chr(41)

但是,它仍然将其输出在telnet终端上:

代码语言:javascript
运行
AI代码解释
复制
mediaGet"gei",1

如何使它读取字符串变量中的括号?如果脚本最终正常工作,是否有人知道如何将vbs脚本的输出保存到日志文件中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-14 15:46:27

我不知道什么是媒体,也不知道它的作用(实际上我从未听说过),所以,我不会对此发表评论。

但是,通过PowerShell运行外部命令是非常常见的,并且有很好的文档记录。见以下内容:

PowerShell:运行可执行文件

正确执行PowerShell中的外部命令

所有这些都是..。

如果您正在使用powershell.exe控制台,这是一回事,但您所做的只是调用VBScript和cmd.exe项。既然是这样,那么为什么不直接使用cmd.exe呢?

然而,PowerShell可以直接做到这一点,那么,为什么.bat和.vbs需要额外的步骤呢?

示例:粗糙且未经测试,因为我不需要下载和测试mediaget

代码语言:javascript
运行
AI代码解释
复制
Start-Process -FilePath 'telnet.exe' -ArgumentList '162.100.10.10'
[system.reflection.assembly]::loadwithpartialname("System.Windows.Forms")
$SendKeys = [System.Windows.Forms.SendKeys]
$sendkeys::SendWait('mediaGet gei,1')
Start-Sleep -Seconds .5
$sendkeys::SendWait("{ENTER}")
Start-Sleep -Seconds .5
$sendkeys::SendWait("exit{ENTER}")

您甚至可以使用.Net命名空间用自己的代码替换Telnet。

新对象System.Net.Sockets.TcpClient

这样称呼它..。

新对象System.Net.Sockets.TcpClient('162.100.10.10',80)

您可以将它用于编写自己的模块,也可以使用MS powershellgallery.com中的这个。

一个快速的YouTube搜索向我展示了媒体是一个网络下载工具。

如果您所做的只是访问一个网站/ ftp站点来下载一个文件,那么您也可以在PowerShell中直接这样做。见此:

使用PowerShell下载文件的3种方法

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56130037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档