如何创建和运行 PowerShell 脚本:分步指南

探索 PowerShell 脚本的奥秘

使用 PowerShell 脚本开启了令人兴奋的可能性。 它可以为您提供一个简洁的平台,用于创建自动化日常任务的脚本。

对于开发人员而言,PowerShell 是构建成熟自动化脚本的强大工具,尤其是在持续集成/持续交付 (CI/CD) 环境中构建、测试和部署解决方案时。

本文将详细介绍如何创建和执行 PowerShell 脚本。 我们将深入研究使用 VS Code、记事本和 PowerShell 集成脚本环境来完成此任务的逐步指导。

让我们开始这段探索之旅吧!

什么是 PowerShell?

PowerShell 是一种跨平台的自动化和配置工具。 它为管理员、开发人员和其他用户提供了一整套工具,通过使用 cmdlet(一种小型、轻量级的命令)来管理各种任务。

PowerShell 具有以下核心特点:

它与命令提示符不同,它可以在所有主流平台(包括 Windows、Linux 和 macOS)上运行。

从技术层面来看,PowerShell 是构建在 .NET 框架之上的。 它支持对象和结构化数据,例如 JSON、CSV 和 XML。 开发人员还可以将 REST API 与 PowerShell 集成。 相比之下,传统的基于文本的命令提示符不支持这些功能。

所有 PowerShell 脚本都以 .ps1 文件扩展名保存。

在编写 PowerShell 脚本时,需要理解三个关键概念:

  • Cmdlet:这些是执行预定义功能的原子脚本。 例如,可以使用 Copy-Item 复制文件,使用 Get-Help 获取帮助,或使用 Write-Host 在屏幕上显示文本。
  • 别名:别名是引用 cmdlet 的快捷方式,可加快访问速度。 然而,建议在交互式场景中使用它们,而不是在编写 PowerShell 脚本时使用。
  • 函数:函数是一组 PowerShell 语句,可以通过调用函数来执行。

PowerShell 与脚本

脚本是自动化工作的关键方法。 无论是程序员、管理员还是自由职业者,脚本都可以帮助自动化日常流程。

脚本的优势显而易见,包括:

  • 通过自动化节省宝贵的时间。
  • 积累实践知识。
  • 确保系统之间的一致性。
  • 提高技能和就业竞争力。

您可以选择使用 PowerShell、Bash、Ruby 或 Python 脚本。

总而言之,PowerShell 是一个强大的脚本工具。 但是,Windows 安全设置可能会阻止脚本执行,并导致“此系统上已禁用脚本执行”等错误。 为了解决这个问题,您需要正确配置执行策略(将在下文讨论)。

为何选择 PowerShell 编写脚本?

选择 PowerShell 进行脚本编写的一个主要原因是其跨平台兼容性。 它支持 Windows、Linux 和 MacOS,而传统的 Windows 命令提示符则不支持。

借助 PowerShell,您可以轻松地使用其内置的任务构建器创建简单的作业。 例如,可以使用 PowerShell 重新启动计算机、定期清除缓存,甚至验证会话状态。

虽然 PowerShell 脚本主要用于系统管理自动化,但开发人员也可以使用它来在 CI/CD 环境中测试、构建和部署应用程序。

如何创建 PowerShell 脚本?

创建 PowerShell 脚本需要文本编辑器。 虽然简单的文本编辑器足够,但使用现代的代码编辑器可以简化整个过程。

因此,我们首先展示如何使用 Visual Studio Code (VS Code) 创建 PowerShell 脚本。 我们还将介绍如何在记事本以及 PowerShell 集成脚本环境(ISE)等其他脚本友好环境中创建 PowerShell 脚本。

#1. 使用 VS Code

VS Code 是一款功能强大且可靠的免费跨平台代码编辑器。 它由 Microsoft 开发,并提供对 PowerShell 的良好支持。

VS Code 提供了一个整洁的用户界面,可用于各种编程语言。

作为一款出色的代码编辑器,VS Code 支持扩展。 为了增强我们的 PowerShell 脚本编写体验,我们将使用 PowerShell 扩展。

安装 Visual Studio Code

在开始之前,您需要先安装 VS Code。

请访问 Visual Studio Code 下载页面,并根据您的操作系统选择合适的版本。 例如,我们使用的是 Windows 11,因此选择 Windows 版本。

下载完成后,双击安装程序,并按照向导将其安装到计算机上。

安装 PowerShell 扩展

您可以通过两种方式安装 PowerShell 扩展。 第一种方式是创建一个新的 .ps1 扩展名文件。

VS Code 能够识别您正在使用 PowerShell 并自动建议安装 Microsoft 的 “PowerShell 扩展”。

点击“安装”即可安装扩展,或者点击“显示推荐”以了解更多信息。

如果 VS Code 没有给出任何建议,您可以手动搜索该扩展。

点击方形图标(一个方块飞出)或按 Ctrl + Shift + X 打开扩展窗口。 搜索 “Microsoft 的 PowerShell”,并点击第一个结果,然后安装它。

最后,系统会询问您是否信任工作区中文件的作者。 点击“信任工作区并安装”以完成安装。

使用 VS Code 创建 PowerShell 脚本

现在,您可以使用 VS Code 和其正确安装的扩展来创建您的第一个 PowerShell 脚本了。

如果您尚未创建新文件,请按照以下步骤操作:

  • 打开 VS Code。
  • 转到顶部菜单,点击“文件”,然后点击“新建文本文件”。
  • 现在,通过转到“文件” > “另存为” 来保存文件。
  • 输入所需的文件名,并确保添加 .ps1 扩展名。
  • 最后,点击“保存文件”。

这样就完成了! 您现在可以创建自己的脚本。 我添加了一个值为“这是为 techblik.com 编写的 VS 代码脚本”的 Write-Host cmdlet。

稍后我们将介绍如何执行脚本,请继续阅读!

#2. 使用记事本

使用记事本创建 PowerShell 脚本非常简单。

只需按照以下步骤操作:

1. 打开“开始”,然后搜索“记事本”。

2. 右键单击“记事本”,然后选择“以管理员身份打开”。

3. 现在,开始编写脚本。

4. 在本教程中,我们输入“这是一个用记事本编写的 PowerShell 脚本”。

5. 转到顶部菜单的“文件”,然后点击“另存为”。

6. 为您的 PowerShell 脚本选择一个名称,然后点击“保存”。

这样就完成了!您已成功使用记事本创建了 PowerShell 脚本。

#3. 使用 PowerShell ISE

Windows 上的 PowerShell 还提供自己的集成脚本环境。 您可以使用它来编写脚本,无需依赖任何第三方的代码或文本编辑器。

要成功使用它,请按照以下步骤操作:

1. 打开“开始”菜单。

2. 搜索关键词 “Windows PowerShell ISE”。

3. 选择第一个结果,右键单击,然后左键单击“以管理员身份运行”。这将打开 PowerShell ISE 窗口。

4. 现在,单击“文件”,然后选择“新建”。这将打开一个类似以下的新文件窗口。

7. 输入您想要的脚本。 在本教程中,我们输入“这是在 PowerShell ISE 的帮助下编写的 PowerShell 脚本”。

8. 完成后,转到“文件”,然后点击“另存为”。

9. 在此处选择文件名,然后单击“保存”。

您也可以直接从 PowerShell ISE 运行脚本。 为此,请单击环境顶部的“运行”按钮。 如果出现安全错误,请阅读以下解决方法。

如何解决 PowerShell 脚本安全错误并运行它

如前所述,Windows 在执行脚本时采用严格的安全策略。 要解决此问题,需要在 Windows 计算机上启用脚本执行。

请按照以下步骤操作:

  • 打开 Windows “开始”菜单。
  • 搜索 PowerShell。
  • 右键单击 PowerShell 应用程序,然后再次右键单击。
  • 选择“以管理员身份运行”选项。
  • PowerShell 打开后,输入命令 “Set-ExecutionPolicy RemoteSigned”。
  • 按 Enter 键,然后系统会提示您确认。 按 A 键启用。

这样就完成了! 您现在可以运行所有脚本了!

对于 PowerShell ISE,结果如下所示。

对于 Visual Studio Code,结果如下所示。

对于记事本,需要直接从 PowerShell 命令提示符运行。

编写和运行 PowerShell 脚本的最佳实践

在使用 PowerShell 脚本时,您应该遵循一些最佳实践。 这些实践包括:

  • 使用 cmdlet 的完整名称,而不是别名。 只有在与控制台交互时,别名才有用。 别名可加快交互速度,但可能会使脚本难以理解。
  • 最好避免使用 Write-Host cmdlet,因为它功能有限。 例如,它仅将输出发送到屏幕。 但您可以使用它来显示特定颜色的文本。 相反,您可以使用 Write-Output cmdlet。
  • 始终使用 cmdlet 的单数名词形式。
  • 使用 cmdlet 认可的动词。
  • 尽可能指定应用程序扩展名。 这可以消除歧义,并提高可读性。
  • 使用专业的 PowerShell 代码编辑器,如 VS Code 或 PowerShell ISE。 它们为编写和执行 PowerShell 脚本提供了卓越的功能。 虽然可以使用记事本或 Notepad++,但这样做会限制您的功能。
  • 尝试添加注释,但不要过度,因为这会降低代码的可读性和可维护性。
  • 确保已为运行 PowerShell 脚本设置了适当的安全参数。

总结

就这样! 现在,您可以使用记事本、VS Code 和 PowerShell ISE 创建并运行 PowerShell 脚本了。 此外,您还可以使用上述任何工具来编写和执行 PowerShell 脚本。

但是,正如最佳实践所述,最好避免使用记事本或 Notepad++ 编写 PowerShell 脚本,因为您会错过专用 VS Code 和 PowerShell ISE 代码编辑器提供的诸多功能。

接下来,您还可以了解如何在 Windows 服务器上检查和更新 PowerShell 版本。