转:http://jingyan.baidu.com/article/bad08e1e86498309c85121ce.html
vbs传参
Set objArgs = WScript.Arguments
For I = 0 to objArgs.Count - 1
'WScript.Echo objArgs(I)
Next
WScript.Echo objArgs(0)
'WScript.Echo objArgs(1)
createobject("wscript.shell").run "c:/pi.bat "&objArgs(0),0
createobject("wscript.shell").run "c:/wwwpi.bat "&objArgs(0),0
方法是:
cscript xxx.vbs value1 value2
Set objArgs = WScript.Arguments
For I = 0 to objArgs.Count - 1
WScript.Echo objArgs(I) '输出“value1”和“value2”
Next
或:
cscript xxx.vbs /param1:value1 /param2:value2
WScript.Echo WScript.Arguments.Named.Item("param1")'输出“value1”
WScript.Echo WScript.Arguments.Named.Item("param2")'输出“value2”
批处理传参
pi.bat
:1
E:\software\PuTTY完整版\plink -N -L 10.77.100.84:8088:192.168.1.113:9091 pi@120.26.44.201 -P 100 -pw %1
goto 1
运行pi.bat 密码
wwwpi.bat
:1
E:\software\PuTTY完整版\plink -N -L 10.77.100.84:8086:192.168.1.113:8080 pi@120.26.44.201 -P 100 -pw %1
goto 1
运行wwwpi.bat 密码
后台执行
pi.vbs
createobject("wscript.shell").run "c:/pi.bat 123456",0
createobject("wscript.shell").run "c:/wwwpi.bat 123456",0
svnup.bat //每隔几秒svn up
:1
ping -n 5 127.0.0.1>null
C:\PROGRA~1\TORTOI~1\bin\svn.exe up E:\wamp\www
goto 1
有的朋友可能会有这样的需求,在 Windows 上要用批处理来定时处理一些事情。当我们在系统中创建一个定时任务时,的确会准时调用我们事先编写好的批处理程序,但它同时会在桌面前端显示。当它在前端显示的话,就会干扰我们当前的工作。下面简单介绍下怎么能让批处理在后台隐藏支持的的方法。
方法/步骤
-
我在桌面有一个用于检测当前电脑打印机服务是否正常运行的批处理文件,如图所示
-
当我运行它以后,它会在前端显示一个 CMD 命令执行窗口,如图所示
-
那接下来我们要把这个批处理程序放到后台运行,不让它在前端显示。要实现这个目的,需要借助 VBS 代码文件。利用 VBS 代码来调用我们想要在后台运行的批处理文件。
-
在 VBS 文件中,我们只需要加入这样一行代码,即可实现。
createobject("wscript.shell").run "d:\打印机服务检测.bat",0
其中 createobject("wscript.shell").run 为固定语句,后面紧跟批处理文件所在的径路和文件名,另外最后再跟一个参数0,就可以达到隐藏的效果。
END