比批处理更好:Windows脚本宿主教程

批处理作业的问题在于它们非常有限。该命令集有点短,并且在使用if-then,for,next和while循环进行结构化逻辑时,并没有太多功能。

后来,Windows Scripting Host出现了。 MS Windows Scripting Host是一个多语言脚本实用程序,Microsoft从Windows 98开始开始在所有PC上作为标准程序进行安装。该工具的第二代产品已重命名为Microsoft Script Host(MSH)。

Microsoft Scripting Host教程

在MUO,我们热爱计算机自动化。例如,Varun讨论了编写自动化脚本的工具Sikuli,Guy向您展示了如何使用AutoIt自动执行任务。 MSH的妙处在于,如果您有任何Win 98后的PC,则可以用多种语言编写“批处理"脚本。

可用的语言包括JScript,VBA和VBscript。如果您使用正确的脚本引擎实现正确的实现,也可以用Perl,Python,PHP,Ruby甚至Basic编写脚本。

我个人对Visual Basic很好,所以我通常选择VBScript 。这里的好处是您不需要任何特殊的编程软件或编译器。就像打开批处理作业一样,只需打开记事本并编写脚本即可。

无需安装任何内容,就可以在VB中编写脚本。最简单的脚本是将文本打印到弹出窗口,如下所示:

将文件另存为.vbs,Windows会识别并运行该文件。双击上面的文件,就会发生这种情况:

您可以使用惯用的语言编写更高级的脚本。为了获得最大的灵活性,请将

为了向您展示这有多酷,我决定编写一个脚本将与NIST原子钟联系以检查当前时间。如果是早晨,它将自动打开我的Thunderbird电子邮件客户端。如果是中午,它将打开我的浏览器到CNN.com。此条件脚本使您能够使计算机更加智能。如果您在PC启动时运行此脚本,则可以根据需要在任何时间自动启动它。

该脚本的第一部分显示在时间服务器“ http: //time.nist.gov:13"并获取当前时间。正确格式化后,它将设置计算机时间。应归功于此,此脚本改编自TomRiddle在VisualBasicScript.com上出色的脚本。为了节省时间,总是在线查找您需要的示例代码,然后根据需要进行调整。

这是到目前为止仅执行上述代码的脚本所要做的。

现在该脚本正在运行,并且每次启动时都会同步我的PC,现在该让它决定根据一天中的时间自动启动什么内容了。在Windows Scripting Host中,此任务就像执行If-Then语句一样简单,它检查“ Now"功能中的一天中的小时,然后启动适当的软件。

在Windows中的8到10之间启动时早上,此脚本将启动我的Thunderbird电子邮件客户端。如果在上午11点到下午1点之间运行,它将在浏览器中启动CNN.com。如您所见,只需在脚本文件中创建一些智能,然后对其进行添加,就可以实现一些非常酷的计算机自动化。

顺便说一句,拥有参考是一个很好的主意。编写这些脚本时,方便使用的脚本命令集。如果您像我一样喜欢VBScript,ss64.com是一个不错的资源,它在一页上按字母顺序列出了所有VBScript命令。

仅编写脚本并不能使任何事情自动化,因为您仍然可以必须手动启动它们。因此,要使用Windows脚本宿主完成自动化,请进入控制面板(管理员区域)中的“任务计划程序",然后选择创建一个任务。

该计划程序可让您在各种各样的操作系统上启动脚本事件,例如一天中的时间或特定的时间表,何时发生系统事件,或者第一次启动或登录计算机。在这里,我正在创建一个计划任务,每次PC启动时都会在上面启动脚本。

这只是一个非常简短的Windows Scripting Host教程。考虑到这些脚本语言中任何一种可用的命令和功能的数量,在您的PC上自动执行各种很酷的任务的可能性几乎仅受您的想象力限制。

一些最佳站点可以找到您可以使用或自定义的预编写脚本包括:

  • Microsoft脚本中心–直接来自microsoft,包括Office,桌面,数据库和活动目录之类的类别
  • 计算机性能–这个英国站点提供了我在网上看到的最好的VBScript选择。
  • 计算机教育–您会在这里找到一小部分脚本,但是它们非常有用,并且都可以使用。 / li>
  • 实验室鼠标–大量的批处理编程资源,例如各种登录脚本。
  • 您是否曾经使用过Windows脚本宿主?您有什么很酷的提示或示例要分享吗?在下面的评论部分中提供您的见解并分享您的经验。

    图片来源:jaylopez

    标签: 计算机自动化 Microsoft 编程