PowerShell 依据管理任务的不同,提供了不同的命令执行方式。比如我们初学PowerShell 就很适合使用交互式界面,如果针对定期任务执行,就必须使用计划任务来实现脚本的执行。
作为PowerShell的命令初学者,如果对PowerShell命令不熟悉,最好的实现环境就是通过交互式命令的方式获取命令执行的结果,能够通过交互环境执行命令后立即返回。对于新手来说,图2.15所示的PowerShell交互界面无疑是非常友好的。
图2.14 PowerShell 交互界面
当我们慢慢熟悉PowerShell 的命令行之后,希望基于PowerShell进行脚本开发来实现当前的各类管理任务,ISE 集成开发环境就能帮助我们了。ISE 集成开发环境默认集成在所有的Windows 8.1之后各个版本的系统中。直接用它来运行PowerShell实现脚本开发,效率相当高,图2.15所示为ISE集成开发环境。
图2.15 PowerShell ISE集成开发环境
还有一类场景,这一类场景不是基于PowerShell的代码开发,而是基于已有的脚本代码进行执行。当我们拿着别人的脚本,应该如何运行呢?如果这个脚本是定期任务,这些脚本的执行方式又是怎样的呢?这就涉及如何运行这个脚本文件了。
1.命令行模式运行脚本
如果当前执行命令的脚本在PowerShell环境下执行,整个执行会比较简单,我们只需要在PowerShell 环境中输入相应的路径即可运行,如果是当前文件夹下的程序,需要使用“.\脚本.ps1”才能运行相关的程序,执行方式如图2.16所示。
图2.16 PowerShell环境中执行脚本
如果我们不是在PowerShell交互环境中执行PowerShell脚本,比如在Command环境下执行脚本,这时执行脚本就必须带上解释程序。在执行PowerShell 脚本过程中必须带上PowerShell 命令,才能进行PowerShell 脚本的解释,图2.17所示为CMD Shell命令环境中执行PowerShell脚本。
图2.17 CMD Shell命令环境中执行PowerShell脚本
2.计划任务执行PowerShell 脚本
脚本的优势在于可以以非常简单的方式执行,而计划任务可以实现简单的重复。结合PowerShell和计划任务,就可以实现PowerShell 任务的重复执行,PowerShell注册任务的步骤可以由PowerShell自己的命令来完成,图2.18所示为通过PowerShell命令执行的计划任务。
图2.18 通过PowerShell 命令执行的计划任务