vbs脚本总结
1. msgbox语法:msgbox "对话框","对话框标题"
例:const hw="Hello World!"
msgbox(hw)
2. Dim 定义变量,vbs只有一种变量,所以不用声明变量。
3. Inputbox("对话框内容","对话框标题")
例:Dim name
name=Inputbox("请输入您的名字","名称")
Msgbox name,"您的名字是"
4. 所有的单引号后面的内容为注释内容。
5. 变量转化:
Cbool函数: 变量-->布尔值
Cbyte函数:变量-->0到255之间的整数
Ccur、Cdbl、Csng:变量-->浮点数值(Ccur精确到后四位)
Cdate :变量-->日期值
Cint、Clng:变量-->整数
Cstr:变量-->字符串
6. 数组:数组下标从0开始
例:arr=array("t1","t2","t3")
For i=0 To UBound(arr)-LBound(arr)
msgbox arr(i)
Next
注:UBound最大可用下标,LBound最小可用下标
7. split函数:切割字符串
split("VBScriptXisXfun","X",-1,1) '-1返回所有子串,1:文本比较;0:二进制比较
8. Join函数:返回一个字符串,此字符串由包含在数组中的子字符串连接创建
arr=array("t1","t2","t3")
Msgbox Join(arr,",")
9. 循环体:do -exit do -loop
例: Dim a,ctr
ctr=0
const pass="pass123"
Do while ctr<3
a=Inputbox("请输入密码")
if a=pass then
msgbox("认证成功")
exit Do
Else
ctr=ctr+1
msgbox("认证出错,请检查密码")
End if
loop
10. &用于连接字符串
vbcrlf相当于键盘的回车键
12. 子程序:1)没有返回值 ;2)使用sub关键字定义;3)通过call调用
例:Dim yname
yname=inputbox("请输入你的名字")
call who(yname)
sub who(cname)
msgbox("您好"&cname)
end sub
12. 函数:function(param1,param2) end function
例:function co(t1,t2)
if t1>t2 then
co=t1
elseif t2>t2 then
co=t2
end if
end function
msgbox co(12,14) '调用函数
13. 对象
①Scripting.FileSystemObject :文件系统操作函数
②Scripting.Dictionary:键值对
③Wscript.Shell:读取系统信息的函数
④Wscript.Network:提供网络连接和远程打印管理的函数
例:set objshell=CreateObject("Wscript.shell")
objshell.Run "Notepad"
注:notepad:记事本 ; calc 计算器; winword word文档
14. 错误信息提示
On Error Resume Next
a=11
b=0
c=a/b
if err.number<>0 then
Wscript.echo err.number & err.description & err.source
end if
错误 err 有2个方法,5个属性.
方法:clear 、raise
属性:description、number、source、helpfile、helpcontext
15. 文件夹操作:
①创建:
Dim fs,s
Set fs= CreateObject("Scripting.FileSystemObject")
if(fs.folderexists("d:\temp")) then
s="is avallable"
else
s="not exist"
set foldr=fs.CreateFolder("d:\temp") '不存在则建立
end if
②删除:
fs.deletefolder("d:\temp")
③拷贝:fs.copyfolder "d:\temp","e:\temp",true
④移动:fs.morefolder "d:\temp","e:\temp"
16. 特殊文件夹
例:set fs=WSCript.CreateObject("Scripting.FileSystemObject")
set wfolder=fs.getSpecialfolder(0) '返回windows目录
set wfolder1=fs.getSpecialfolder(1) '返回system
set wfolder2=fs.getSpecialfolder(2) '返回临时目录
特殊功能键:
shift ->+
ctrl -> ^
alt ->%
17. 文件属性
0:普通文件
1:只读文件
2:隐藏文件
4:系统文件
16:文件夹或目录
32:存档文件
1024:连接或快捷方式
18. 读文件
read(X) :读取x个字符
readline:读取一行
readall:全部读取
例:set fs=CreateObject("Scripting.FileSystemObject")
set file=fs.opentextfile("c:/1.txt",1,true) '1为只读 ,2为写入,8为追加
value=file.read(20)
line=file.readline
all=file.readall
19. 写文件
write(X):写入x个字符
writeline(x):写入行
writeblanklines(n): 写入n个空行
读文件关闭后,才能以写的方式打开,打开后,2为写入,8为追加写入
20. 指针变量: atendofstream:当处于子文件结尾的时候,这个属性返回true,一般用循环检测是否到达文件尾。
例:do while file.atendogstream <>true
file.read(10)
loop
atendoline:如果到了行末尾,返回true。
skip(x) 跳过x个字符
skipline 跳过一行
21. mid函数:从字符串中返回指定个数的字符。
mid(string,start[,length])
例: Dim a=Mid("This is a beautiful day!",1,11) 'This is a b
Right("I like it",3) '从右边开始截取3个字符
left("I like it",3) '从左边开始截取3个字符
Lcase("NOHNH") '大写转换成小写
Ucase("oracle") '小写转换成大写
22. for-next 循环
例:Dim i
For i=0 To 9
msgbox(i)
Next
23. for each ...in next 循环
例:a=array("1","2","3")
for Each i In a
msgbox i
next
24. while ... wend 循环
例: Dim counter
counter=0
while counter<20
counter=counter+1
msgbox counter
wend
25. option Explicit 强制要求显示声明脚本中的所有
26. instr函数:返回某字符串子在另一字符串中第一次出现的位置。例: my=Instr(4,"xxpxxpxxPx","P",1) '在位置4进行文本比较,返回6
instrB:返回字节位置
replace 替换:replace("xxpxxpxxp","p","Y") '把p换成Y
space :my string="Hello"&space(10)&"World" '在两个字符中插入10个空格
strReverse:逆反 my ms=strReverse("VBSctipt") 'tpitcSBV
InstrRev:返回某字符串在另一字符串中出现的从结尾记起的位置。 例:my=InsrtRev("XXpXXpXXPXXP","P",10,0) '从第10个位置起向前搜索,第9位
strcomp :my comp=strcomp("ABCD","abcd",1)
返回值:-1: str1<str2
0: str1=str2
1: str1>str2
null: null
27. Ltrim:不带前导空格
Rtrim:不带后续空格
Trim:前导后续都不带
isEmpty():判断变量是否初始化,是返回ture,否则返回false。当变量为null时,返回false。
isNull():指表达式是否包含任何有效数据,为null,返回为ture。
isNumeric():是否为数字
isObject():是否引用了有效的automation对象
TypeName():返回字符串,提变量的vaviant子类型信息。例:mytype=TypeName("VBSCript") '返回"String"
varType():返回 变量子类型。例:my=varType(300) '返回2,代表整数
28. 键值对 removeAll :删除所有
例:set args_dic =createObject("Scripting.Dictionary")
args_dic.Add "1","老样"
args_dic.Add "1","老林"
args_keys=args_dic.keys
args_values=args_dic.Items
for i=0 To args_dic.Count-1
WSCript echo "keys:"&args_keys(i)&"values:"&args_values(i)
Next
WSCript echo "keys:values"&args_dic.Item("1")
删除单个:args_dic.remove("2")
判断是否存在:args_dic.exists("3")
29. DatePart 日期函数
例: my_date1=DateAdd("d",-1,Date) '取当前时间的前一天
mydate2=DatePart("yyyy",my_date1)&"-"&Right("0")&DatePart("m",my_date1,2)&"-"&Right("0")&DatePart("d",my_date1,2)
注:yyyy ->年 ;q -> 季度; m->月;y->一年的日数;d->日;ww->周; h->小时;n->分钟;s->秒。
30. 获取第一个cpu对象:
set objproc=GetObject("winmgmts:\\.\root\cimv2:win32-processor='cpu0'")
icpu=objproc.LoadPercentage '获得cpu的使用率。
vbs脚本总结的更多相关文章
- 使用vbs脚本进行批量编码转换
使用vbs脚本进行批量编码转换 最近需要使用SourceInsight查看分析在Linux系统下开发的项目代码,我们知道Linux系统中文本文件默认编码格式是UTF-8,而Windows中文系统中的默 ...
- 在本地主机上powershell中连接远程主机执行vbs脚本,得到执行结果(2008版及以上)
在桌面版的主机上远程管理服务器版主机,在本地powershell中连接远程主机执行vbs脚本,得到执行结果. 执行步骤: 1.将本地主机上的Hyper.vbs复制到远程连接主机上.例如,本地vbs脚本 ...
- [VBS]脚本中的字典、动态数组、队列和堆栈
今天用VBS脚本写了几个程序,用到了字典(Dictionary).动态数组(ArrayList).队列(Queue)和堆栈(Stack).现在写篇Blog总结一下 :-) 1.编写环境 今天突发奇想下 ...
- Vbs脚本经典教材(转)
Vbs脚本经典教材(最全的资料还是MSDN) —为什么要使用Vbs? 在Windows中,学习计算机操作也许很简单,但是很多计算机工作是重复性劳动,例如你每周也许需要对一些计算机文件进行复制.粘贴.改 ...
- 用VBS脚本发邮件
需求是这样的:针对账号的管理,如果发现该账号的管理员给账号加了批注,(比如要过期,修改密码,完善资料等),就需要找到这样的账号及其管理的邮件,然后发邮件给他们的管理员同时抄送给账号以达到提醒的目的.那 ...
- 监视系统3389的VBS脚本
Title: 监视系统3389的VBS脚本 --2010-10-27 19:56 从网上找的,不知道是不是NP写的那个 ---------------------------------------- ...
- VBS脚本病毒特点及如何防范3(转)
5.Vbs病毒生产机的原理介绍 所谓病毒生产机就是指可以直接根据用户的选择产生病毒源代码的软件.在很多人看来这或许不可思议,其实对脚本病毒而言它的实现非常简单. 脚本语言是解释执行的.不需要编译,程序 ...
- 自动删除超过30天文件的vbs脚本【转发】
利用代码制作自动删除超过30天的文件及文件夹的vbs脚本,定期清理文件夹中长时间无用文件. 1.首先在新建一个文本文档,粘贴代码(代码可通过添加微信公众号vbs_edit(VBS脚本之家)回复018获 ...
- VBS脚本和HTML DOM自动操作网页
VBS脚本和HTML DOM自动操作网页 2016-06-16 10:24 1068人阅读 评论(0) 收藏 举报 分类: Windows(42) 版权声明:本文为博主原创文章,未经博主允许不得转 ...
- VBS脚本随笔
1.定时运行程序与关闭程序的VBS处理方法: do set ws=createobject("wscript.shell") ws.run"你要运行的程序的路径(比如说d ...
随机推荐
- Libgdx 开发指南——目录
本系列文档选译自libgdx github项目 wiki : https://github.com/libgdx/libgdx/wiki 由于关于Libgdx的中文文档非常稀缺,因此在这里对官方Wik ...
- 【RobotFramework自动化测试】RFS常用脚本
读取后台数据文件:Import Variables | ${CURDIR}/\ABC.py 定位页面:Wait Until Keyword Succeeds | 5s | 500ms | select ...
- OD调试篇9
渐渐地要用比较高明一点的方法去破解软件了 那好,看看今天的程序先 先载入 测试下程序 发现这是一个未注册版本的程序,注册也不让注册,注册就跳出You have rntered an invalid ...
- FatMouse' Trade_贪心
Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats guarding th ...
- iscroll动态加载数据完美解决方案
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...
- [GodLove]Wine93 Tarining Round #2
比赛链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=44704#overview 题目来源: ZOJ Monthly, June 2 ...
- LINUX系统编程 由REDIS的持久化机制联想到的子进程退出的相关问题
19:22:01 2014-08-27 引言: 以前对wait waitpid 以及exit这几个函数只是大致上了解,但是看REDIS的AOF和RDB 2种持久化时 均要处理子进程运行完成退出和父进程 ...
- 如何在一个网站或者一个页面规划JS
规划主要分为两部分:1.JS的分层,2.Js的规划 1.JS的分层(功能) 1-1.底层的库 : jquery 1-2.组件(ui) : 比如拖拽等,模块之间没有必然的联系,可以重复利用 1-3. ...
- html+css图片下弹出蒙版
鼠标移入时弹出蒙版!!! html<!DOCTYPE html<html lang="en"<head> <meta charset="UT ...
- 论文笔记之:A CNN Cascade for Landmark Guided Semantic Part Segmentation
A CNN Cascade for Landmark Guided Semantic Part Segmentation ECCV 2016 摘要:本文提出了一种 CNN cascade (CNN ...