总结
本模块介绍了如何创建、修改、查看和运行 PowerShell 脚本。 此外,还介绍了如何为脚本设置执行策略,并为其添加数字签名。 下面列出了几项要点:
使用脚本实现重复性任务的标准化。 实现任务标准化可降低错误风险。 如果脚本已经过测试,那么你可多次运行该脚本,而不会出错。
报告是一项复杂的重复性任务,它可通过 Windows PowerShell 来完成。 你可使用 Windows PowerShell 创建基于文本或基于 HTML 的报表。
Windows PowerShell 脚本具有 .ps1 文件扩展名。 最基本的脚本只是在以 .ps1 文件扩展名保存的文本文件中列出的 Windows PowerShell 命令。
Microsoft 在 PowerShell 库中提供了一组整理好的脚本和模块。 PowerShell 库包含由 Microsoft 和 PowerShell 库成员发布的内容。 可以使用 PowerShell 库中的模块来简化脚本的生成。
PowerShellGet 模块包括用于访问和发布 PowerShell 库中的项的 cmdlet。
PowerShell 库需要使用传输层安全性 (TLS) 1.2 来帮助保护通信。
可以通过创建自己的 NuGet 源为组织实现专用 PowerShell 库。 可以使用文件共享或基于 Web 的应用程序创建 NuGet 源。 拥有专用 PowerShell 库以后,必须使用 Register-PSRepository cmdlet 并指定源位置才能注册 NuGet 源。 注册存储库后,用户可以进行搜索,就像 PowerShell 库一样。
若要在命令提示符下运行可执行文件,输入其名称就可以在当前目录中运行该文件。
若要控制 Windows PowerShell 脚本是否可以在 Windows 计算机上运行,请在计算机上设置执行策略。 执行策略的选项为 Restricted、AllSigned、RemoteSigned、Unrestricted 和 Bypass。
若要在计算机上设置执行策略,请使用 Set-ExecutionPolicy cmdlet。
控制 Windows PowerShell 脚本用法的替代方法是 AppLocker。 使用 AppLocker,可以设置各种限制来限制特定脚本或在特定位置的脚本的运行。
ConstrainedLanguage 模式支持所有核心 Windows PowerShell 功能,如脚本构造。 它还支持加载 Windows 中包含的模块。 但是,它确实限制对运行任意代码和访问 Microsoft .NET 的对象的访问。
若要为脚本添加数字签名,请使用 Set-AuthenticodeSignature cmdlet。
其他阅读材料
若要了解详细信息,请参阅以下文档: