标题: [文本处理] 根据用户输入telnet指定IP的批处理要如何才能运行? [打印本页]
作者: ciacia1986 时间: 2010-2-20 00:22 标题: 根据用户输入telnet指定IP的批处理要如何才能运行?
- @echo off
- set /p ip=请输入ip地址:%ip%
- @del c:\temp.vbs
- @echo on error resume next >>c:\temp.vbs
- @echo dim WshShell>>c:\temp.vbs
- @echo Set WshShell = WScript.CreateObject("WScript.Shell")>>c:\temp.vbs
- @echo WshShell.run"cmd">>c:\temp.vbs
- @echo WshShell.AppActivate"c:\windows\system32\cmd.exe">>c:\temp.vbs
- @echo WScript.Sleep 200>>c:\temp.vbs
- @echo WshShell.SendKeys"telnet %ip%">>c:\temp.vbs
- @echo WshShell.SendKeys"{ENTER}">>c:\temp.vbs
复制代码
以上批处理我想实现的是将一个随机的IP地址如:222.87.144.156赋值给变量IP,以便在以后的操作中调用IP请大家帮忙看看,以前这样的赋值没做过
不是说要把某个固定的IP地址赋值给某个随机,是要定义一个随机,然后将从键盘输入的IP地址赋值给这个随机,方便在以后的操作中将这个随机引用
新手发帖已经多次询问过解决方法,脸都搞红了结果还是没解决.......
谢谢
作者: hlzj88 时间: 2010-2-20 01:11
是这样吗
- @echo off
- setlocal EnableDelayedExpansion
- set /p ip=请输入ip地址:
- @del C:\temp.vbs
- @echo on error resume next >C:\temp.vbs
- @echo dim WshShell>>C:\temp.vbs
- @echo Set WshShell = WScript.CreateObject("WScript.Shell")>>C:\temp.vbs
- @echo WshShell.run"cmd">>C:\temp.vbs
- @echo WshShell.AppActivate"windows\system32\cmd.exe">>C:\temp.vbs
- @echo WScript.Sleep 200>>C:\temp.vbs
- @echo WshShell.SendKeys"telnet !ip!">>C:\temp.vbs
- @echo WshShell.SendKeys"{ENTER}">>C:\temp.vbs
复制代码
作者: ciacia1986 时间: 2010-2-20 14:47
不行啊,程序根本运行不了,输入IP地址过后程序直接关闭了,不能够对输入的IP地址进行连接。
作者: ciacia1986 时间: 2010-2-20 14:48 标题: 回复 2楼 的帖子
谢谢,但是还是不行,运行不了
作者: hlzj88 时间: 2010-2-20 18:37
vbs不懂,上面只是把你键盘输入的Ip写入到VBS的问题解决了。其他真无能为力。
我的机可以运行,且与原文相同
作者: ciacia1986 时间: 2010-2-21 15:13 标题: 根据用户输入telnet指定IP的批处理要如何才能运行?
- @echo off
- set /p ip=请输入IP:
- echo 你输入的IP是:%ip%
- @echo WshShell.run"cmd">>C:\temp.vbs
- @echo WshShell.AppActivate"windows\system32\cmd.exe">>C:\temp.vbs
- @echo WScript.Sleep 200>>C:\temp.vbs
- @echo WshShell.SendKeys"telnet %ip%">>C:\temp.vbs
- @echo WshShell.SendKeys"{ENTER}">>C:\temp.vbs
复制代码
为什么输入IP以后cmd.exe不会启动,而程序直接就关闭了,要怎样改才能运行?我想实现的时候从键盘输入一个IP地址然后对输入的IP地址进行telnet
作者: Seter 时间: 2010-2-21 17:02
你就不会最后运行C:\temp.vbs....
作者: ciacia1986 时间: 2010-2-22 08:43
帮帮我吧.......
作者: sysplay 时间: 2010-2-22 08:45
你的代码仅仅只是创建了C:\temp.vbs,并没有运行该VBS文件。在后面添加start C:\temp.vbs。
作者: Seter 时间: 2010-2-22 10:36
楼上正解。你这个cmd的目的是写一个文件,而你的要求是运行这个文件...start即可..
作者: ciacia1986 时间: 2010-2-23 00:05 标题: 回复 10楼 的帖子
能不能说详细一点?。。。。。。。。。。
作者: Batcher 时间: 2010-2-23 01:17
- @echo off
- set /p ip=请输入IP:
- echo 你输入的IP是:%ip%
- >"C:\temp.vbs" (
- echo WshShell.run"cmd"
- echo WshShell.AppActivate"windows\system32\cmd.exe"
- echo WScript.Sleep 200
- echo WshShell.SendKeys"telnet %ip%"
- echo WshShell.SendKeys"{ENTER}"
- )
- start "" "C:\temp.vbs"
复制代码
作者: ciacia1986 时间: 2010-2-23 08:38
原帖由 Batcher 于 2010-2-23 01:17 发表
@echo off
set /p ip=请输入IP:
echo 你输入的IP是:%ip%
>"C:\temp.vbs" (
echo WshShell.run"cmd"
echo WshShell.AppActivate"windows\system32\cmd.exe"
echo WScript.Sleep 200
echo Ws ...
提示错误:脚本c:\temp.vbs
行:1
字符:1
错误:缺少对象:‘wshShell’
代码:800A01A8
源: Microsoft VBScript 运行时错误
VBS搞不懂。。。
作者: Batcher 时间: 2010-2-23 13:07 标题: 回复 13楼 的帖子
本论坛有专门的VBS版块,可以过去学习一些基础知识。- @echo off
- set /p ip=请输入ip地址:%ip%
- >"C:\temp.vbs" (
- echo on error resume next
- echo dim WshShell
- echo Set WshShell = WScript.CreateObject^("WScript.Shell"^)
- echo WshShell.run"cmd"
- echo WshShell.AppActivate"c:\windows\system32\cmd.exe"
- echo WScript.Sleep 200
- echo WshShell.SendKeys"telnet %ip%"
- echo WshShell.SendKeys"{ENTER}"
- )
- start "" "C:\temp.vbs"
复制代码
作者: ciacia1986 时间: 2010-2-24 08:07 标题: [已解决]根据用户输入telnet指定IP的批处理要如何才能运行?
原帖由 Batcher 于 2010-2-23 13:07 发表
本论坛有专门的VBS版块,可以过去学习一些基础知识。@echo off
set /p ip=请输入ip地址:%ip%
>"C:\temp.vbs" (
echo on error resume next
echo dim WshShell
echo Set WshShell = WScript.CreateO ...
谢谢,搞这么长时间终于解决了
[ 本帖最后由 ciacia1986 于 2010-3-22 17:07 编辑 ]
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |