Netwrix 1Secure 提供跨数据和身份的统一可见性——免费试用14天,享有完全访问权限。开始免费试用

资源中心电子书

Windows PowerShell 脚本教程

Windows PowerShell 脚本教程

PowerShell 脚本让你能够自动化重复的 Windows 和 Active Directory 任务,从拉取报表到批量更新账户。本教程从基础开始:变量、管道、循环和函数,然后逐步构建到你今天就能运行的脚本。下载完整指南,了解 AD 账户与计算机管理、文件系统任务以及脚本调度的详细演练,确保在你需要时手边就有可正常工作的脚本。

下载 PowerShell 命令脚本教程(PDF)

如何编写 PowerShell 脚本?

PowerShell 脚本是一个以 .ps1 为扩展名保存的纯文本文件。你可以用任何文本编辑器来编写,不过大多数人会使用带有 PowerShell 扩展的 Visual Studio Code,以获得语法高亮、自动补全和集成调试功能。将命令一行一条编写、保存文件,然后运行它。

从小处开始。一个两行的脚本用来获取数值并将其打印出来,会教会你每位 PowerShell 用户都依赖的核心循环:编写、运行、调整。在行首添加一个 # 的注释,用于说明该段落的作用;因为几个月后你再读到的脚本,往往不会自己把用途讲清楚。这个教程会在上一节的基础上逐步构建每个概念,因此初学者可以从头到尾顺畅跟进。

基本的な PowerShell コマンドとは何ですか?

PowerShell 命令(称为 cmdlet)遵循“动词-名词”的模式,因此很容易阅读并猜出用途:Get-, Set-, New-, and Remove-。少量的 cmdlet 就能覆盖大多数“入门第一天”的任务:

  • Get-Help:查找任意 cmdlet 的语法和示例
  • Get-Command:列出当前会话中可用的所有 cmdlet
  • Get-Member: 查看对象的属性和方法
  • Get-Process: 查看正在运行的进程
  • Get-ChildItem: 列出文件、文件夹或注册表项

输入 Get-Help <cmdlet name> -Examples 以便随时复习,因为 PowerShell 的内置帮助几乎覆盖了盒子里所有 cmdlet。速查表按任务对这些内容进行了分组,因此你无需在脚本中途搜索。

如何运行 PowerShell 脚本?

打开 PowerShell,进入脚本所在文件夹,然后使用以下命令运行: .\scriptname.ps1。如果提示说无法加载脚本,因为已禁用脚本运行,那么被阻止的原因是 PowerShell 的执行策略,而不是你的脚本本身。

执行策略有多个级别,从“严格限制”到“完全开放”。选择错误的级别可能会让你卡住,也可能会使系统暴露在风险之下。本指南将逐一讲解每个级别,指出哪一个最适合日常脚本编写的平衡点,并提供可安全设置它的精确命令。

如何使用变量、循环和函数?

变量用 $ 作为前缀来存储值,例如 $name = "Server01"。它们可以保存文本、数字,甚至是完整的对象;PowerShell 会为你自动判断类型。

循环会对集合中的每个元素重复执行某个操作。你最常用的是 foreach 循环:

      foreach ($user in $users) {
    Write-Host $user.Name
}
      

函数封装可复用的逻辑,因此你只需要编写一次,就可以经常调用:

      function Get-Greeting($name) {
    "Hello, $name"
}
      

每个概念都配有一个简短、可运行的示例,你可以直接复制并加以调整。

在 Active Directory 中,使用 PowerShell 还能自动化哪些工作?

随 RSAT(远程服务器管理工具)安装的 PowerShell ActiveDirectory 模块,会新增专为目录任务设计的 cmdlet。常见收获:

本教程中的实操示例会展示每种情况的通用模式,因此你可以在不从空脚本开始的情况下,将其适配到自己的环境。

对于不想长期维护脚本的团队,专为此目的打造的工具可涵盖相同的 AD reportingchange tracking,无需自定义代码。

常见问题解答(FAQs)

分享到