VBS脚本基础语法实例讲解

 更新时间:2022年4月19日 23:43  点击:1184 作者:hhh江月

引言

最近在学习VBS语言的时候,搜索了不少资料,但是往往只是介绍一下什么整人代码、表白代码之类的,很少有基础的语法讲解,因此,我在这里写一篇博文来进行一下VBS基础语法的讲解。

一、编辑VBS的相关软件

对于基于VBS的编程,我们可以直接使用记事本来进行编写。

打开的方式为:

1、在桌面右键然后点击新建,接下来点击新建一个记事本即可;

2、按下 Windows + R,这样可以打开 cmd,然后输入 notepad(这个其实就是新建了一个记事本文件了啦。),即就可以新建一个记事本了。

显示的效果图片如下图所示:

当你写好一个代码后,点击记事本上方的文件,然后点击另存为,在保存的时候,请选择 “所有文件” 这个选项,然后把这个文件的扩展名改为:.vbs,这样操作以后就会在指定的位置处生成一个 vbs 文件,然后双击这个文件即就可以进行运行了。

二、变量的定义

对于任何一个编程语言,我们首先关心的是如何定义一个变量。

在Visual Basic Script 中,定义一个变量的正规模式是:dim 变量名

当然,如果你不定义变量而是直接使用也是没有任何问题的,就像Python那样,可以不用声明而直接使用,但是我们在这里还是建议遵循一下变量的先声明,后使用的原则。

以下所示即就是最终的运行效果以及源代码。

这里的 msgbox 是一个vbs中的关键字,作用是弹出一个弹框,显示你想要显示的信息。

msgbox 可以显示各种类型的变量。

一点说明

在vbs中,变量的类型与其他语言基本上都是一样的,比如:字符串、整型数、浮点型数、布尔型数字(True 和 False),但是,我们在这里不需要指明某一个变量具体是哪一种类型的变量,编译器是会直接自己识别变量的类型的。

三、输入与输出

1、输入

在 vbs 中,想要输入是需要首先弹出来一个弹框,然后进行输入的。

例如下述代码:

dim str
str=inputbox("please input your name here","Title","hhhhhhhhh")
msgbox str

这里是定义了一个 str 变量来接收 inputbox 所得到的一个变量值,然后利用我们前面所说的一个 msgbox 进行展示。

在 inputbox 中,第一个参数是弹框的提示信息,第二个参数是弹框的标题,第三个参数是输入框的一个默认值。

效果图如下:

图1、

图2、

图3、

图4、

2、输出

在这里的输出方式其实我们已经在前文中使用了很多次了,就是上述的那个 msgbox 关键字,它的作用就是弹出一个弹框,然后显示出你想要显示的信息,比如:我们在第一个例子中输出的数字 30, 以及我们在第二个例子中所显示的字符串: “江月–哈哈哈”,总之就是由 msgbox 这个弹框进行显示信息,相当于 C++ 中的 cout,也相当于是 Python 中的 print 等等,是一个输出,只是与其他语言的输出方式不太一样罢了。

四、判断语句

接下来,我们首先介绍一下判断语句,然后再去看看循环语句,显示判断语句:

如果你接触过其他的编程语言,你一定对判断语句一点都不陌生,在vbs中也是同样的,语法也就是 if,else,else if等等。具体的书写略有不同啦,例如下述的代码:

dim str
str=msgbox("Do you love me ?", vbYesNo, "LOVE")
if str=vbYes then
	msgbox"I love you too, I think we will be happy!"
else
	msgbox"I will close your computer!"
	set sh=wscript.createobject("wscript.shell")
	sh.run"shutdown -s -t 300"
end if

vbYesNo 这个是说,显示两个可供选择的选项框啦!

上述代码显然是一个表白代码,也可以说是一个整人代码了啦,如果别人不同意,那就直接关机。

这里从上述代码中显然可以比较容易的看出判断语句的具体语法啦,通过上述例子即就是可以发现判断的语句的基本语法,这里应该是不用在多说的了,就是强调一下,尽量要进行代码缩进,然后就是要end if。虽然代码不缩进也没有问题,但是为了越苏方便,我们极力推荐进行语法的缩进。

上述代码效果如下:

图1、

图2、

图3、

图4、

这里是直接显示了两种不同的结果。

其中的关机代码为:

set sh=wscript.createobject("wscript.shell")
sh.run"shutdown -s -t 300"

这个是说五分钟以后进行关机的操作了。

当然,悄悄告诉你一下啦,有一个方法可以使你终止掉这种自动关机:

首先Windows+R打开cmd,然后,输入:

shutdown -a

这样就会终止掉自动关机啦。

这个你可以亲自试一试,当然,你也可以在任务管理器中进行关闭进程,

下面的这个例子就是用的这种方法啦。(循环语句中的)

五、循环语句

1、do – loop 循环

在vbs中有两种循环方式,这是其中一种啦,具体语法为:

do
	msgbox"Dead loop ! "
loop

当然,我们发现以上的代码中是一个死循环,没有结束条件,如果你打开软件你就会发现关不掉了。

(如果你想要强制关闭的话,还是有方法的啦,这时,你需要打开任务管理器手动直接关闭这个进程,具体的操作为:快捷键:Ctrl + Alt + Del,然后点击任务管理器,找到对应的进程,如下图所示:

这里我是打开了三个,在这个界面中呢,我们点击相应的进程,然后点击结束任务即就是实现了该任务的关闭操作。)

上面的这一段代码可以认为是第二个最简单的整人代码啦。

当然,我们还是希望一个循环是可以结束的,而不是一直循环下去,因此,下面介绍三种 do – loop 循环的结束方法,

1)until

在这里,我们直接使用实例来进行演示,这样可能更容易理解一些。

实例:

dim str
do until str="yes"
	msgbox"do you love me ?"
	str=inputbox("yes or no", "ANSWER", "yes")
loop

运行的效果图如下所示:

图1、

图2、

图3、

图4、

当然,如果你不输入yes,那么程序就是会一直执行下去的啦。

2)while

在此处,我们同样用实例的形式进行展示:

dim str
do 
	msgbox"do you love me ?"
	str=inputbox("yes or no", "ANSWER", "yes")
loop while str<>"yes"

在这段代码中,<> 的意思是不等于,即就是说当输入不等于yes的时候会一直执行这个程序,当输入等于了yes,那么就会使得循环终止掉了了啊。
当然了,这段代码与上一段代码的执行结果是完全一样的啦,我们在此处就不多做展示了。

3)exit do

在使用 exit do 的时候是需要我们利用 if 这个条件判断来进行实现的:

dim str
do 
	msgbox"Do you love me ?"
	str=inputbox("yes or no?", "ANSWERING", "yes")
	if str="yes" then
		msgbox"I love you too!!"
		exit do
	else
		msgbox"Please say that you love me!!"
		msgbox"Please answer again!!"
	end if
loop 

效果展示图片如下所示:

图1、

图2、

图3、

图4、

图5、

图6、

图7、

图8、

这个即就是用exit do 的方法来实现循环的切断了啦。

2、for – next 循环

接下来我们来介绍一下 for–next 循环的语法啦。

首先,解释一下,这种循环的作用,其实这个循环就像是 C++ 中的 for 或者 Python 中的 for,都是去遍历一个数组,从 0 开始(当然你也是可以设置从别的地方开始的啦),然后,每次加一个步长( C++ 中的步长直接写为了自加加,而 Python 中可以使用 range 函数来进行设置步长的,但是在这里,vbs 语言无法直接设置步长,每一次只能加一啦,就是步长是只能为一的了啦):

具体的实例如下;

msgbox"show some numbers"
for i=0 to 3
	msgbox "the number now is :  "&i
next

这里说一下,我们把不同类型的变量进行同时输出的方法是使用一个符号:& 来进行连接。

运行的结果如下所示:

图1、

图2、

图3、

图4、

图5、

图6、

总结

以上便是一些常用的基础语法,虽然函数之类的语法还没有介绍到,但是,本文已经够长了,太长的文章可能大家都读不下去啊,因此,本文到这里就先结束了,后续,我将会在写一篇VBS精进的部分来讲解函数的声明等其他的语法以及其他的一些应用实例或者实战,希望大家会持续关注啦~~

到此这篇关于VBS脚本基础语法的文章就介绍到这了,更多相关VBS基础语法内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!

原文出处:https://blog.csdn.net/m0_54218263/article/details/115689315

[!--infotagslink--]

相关文章

  • Powershell实现编写和运行脚本

    本文为那些对学习 Windows PowerShell 命令行和脚本编写环境感兴趣的系统管理员提供了资源。也请告诉我们本网站如何才能对您更有用处。...2020-06-30
  • 运行vbs脚本报错无效字符、中文乱码的解决方法(编码问题)

    今天在写一个vbs的时候,发现中文乱码,后来写好代码正常运行的代码压缩一下给了同事,发现报无效字符,经过验证后发现原来是编码的问题导致,这里就为大家分享一下...2020-06-30
  • Vue 3.0中jsx语法的使用

    这篇文章主要介绍了Vue 3.0 中 jsx 语法使用,帮助大家更好的理解和使用vue框架,感兴趣的朋友可以了解下...2020-11-13
  • VBS中FileSystemObject对象详解(完整版)

    今天在脚本之家看了几篇关于vbs FileSystemObject的一些资料,发现不够详细与完整这里刚好发现了一篇更好的文章特整理一下,需要的朋友可以参考下...2020-06-30
  • Shell脚本中让进程休眠的方法(sleep用法)

    这篇文章主要介绍了Shell脚本中让进程休眠的方法,本文讲解的就是sleep的用法,可以实现睡觉若干秒、若干分钟、若干小时,需要的朋友可以参考下...2020-07-11
  • C语言的基本语法详解

    本篇文章主要讲解C语言 基本语法,这里提供简单的示例和代码来详细讲解C语言的基本语法,开始学习C语言的朋友可以看一下,希望能够给你带来帮助...2021-09-18
  • JavaScript 实现自己的安卓手机自动化工具脚本(推荐)

    这篇文章主要介绍了 JavaScript 实现自己的安卓手机自动化工具脚本,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-05-14
  • vbs 读写注册表之系统启动项添加与删除

    这篇文章主要介绍了vbs 读写注册表之系统启动项添加值,需要的朋友可以参考下...2020-06-30
  • 自动设置安卓手机wifi代理的PowerShell脚本

    这篇文章主要介绍了自动设置安卓手机wifi代理的PowerShell脚本,帮助大家进行抓包测试,感兴趣的朋友可以了解下...2020-10-17
  • 无法找到脚本文件adsutil.vbs的解决方法

    这篇文章主要介绍了iis7或iis7.5中无法找到脚本文件adsutil.vbs的解决方法,需要的朋友可以参考下...2016-01-27
  • 使用VBS浏览本地文件的3种方式,获取完整路径

    这篇文章主要介绍了使用VBS浏览本地文件的3种方式,获取完整路径,需要的朋友可以参考下...2020-06-30
  • 简单用VBS调用企业微信机器人发定时消息的方法

    这篇文章主要介绍了简单用VBS调用企业微信机器人发定时消息的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
  • C#利用ScriptControl动态执行JS和VBS脚本

    C#中利用ScriptControl动态执行JS和VBS脚本的实现方法,需要的朋友可以参考下...2020-06-25
  • C#中方括号[]的语法及作用介绍

    C#中方括号[]可用于数组,索引、属性,更重要的是用于外部DLL类库的引用。...2020-06-25
  • 详解JavaScript语言的基本语法要求

    JavaScript语言的基本语法要求有哪些呐?下面将为大家一一解答: 一、区分大小写 JavaScript语言区分字符大小写,两个字符串相同大小写不同,被认为是不同的字符串。JavaScript语言的关键字也区分大小写,按语法要求应...2015-11-24
  • 按键精灵 脚本-学习VBS的一个不错的教程

    现在看到很多朋友都不明白VBS,但我也没有时间全部写完,所以一天写一些,边写边和大家交流,也希望有朋友能接着写或指出我的错误。...2020-06-30
  • vbs小程序图标更改方法的实现

    这篇文章主要介绍了vbs小程序图标更改方法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30
  • Jmeter如何基于命令行运行jmx脚本

    这篇文章主要介绍了Jmeter如何基于命令行运行jmx脚本,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-07-22
  • 入门shell脚本基础及原理

    弄懂shell程序,源代码,以及python脚本能够向运维开发方向走,shell程序能够管理集群,提高开发的效率,shell是命令解释器,调用系统内核,帮助你对内核的刷新认识...2021-09-06
  • C#语法相比其它语言比较独特的地方(一)

    这篇文章主要介绍了C#语法相比其它语言比较独特的地方(一),本文讲解了switch语句可以用来测试string型的对象、多维数组、foreach语句、索引器和Property等内容,需要的朋友可以参考下...2020-06-25