从这一篇起,我们正式告别理论,开始动手实践。在 PowerShell 的世界里,我们与系统交互的主要方式就是通过 Cmdlet(读作 "Command-Let")。理解 Cmdlet 并掌握如何自学它们,是成为 PowerShell 大师的第一块,也是最重要的一块基石。
一、 什么是 Cmdlet?你的魔法咒语
你可以把 Cmdlet 理解为 PowerShell 的"内置命令"。但与 CMD 中的 dir、copy 这些传统命令不同,Cmdlet 遵循一个非常严谨且易于理解的语法结构:
动词-名词
这个结构就像英语中的"动宾短语",直白地告诉你这个命令是"对什么做什么"。
-
动词 (Verb):描述要执行的动作。例如:
Get(获取)、Set(设置)、New(新建)、Remove(删除)、Start(启动)、Stop(停止)。 -
名词 (Noun):描述动作作用的对象。例如:
Process(进程)、Service(服务)、Item(项,通常指文件或目录)。
一些最常用的 Cmdlet 例子:
-
Get-Process:获取-进程(查看当前运行的所有进程) -
Get-Service:获取-服务(查看系统上的所有服务) -
Stop-Service:停止-服务(停止某个指定的服务) -
Copy-Item:复制-项(复制文件或文件夹)
这种一致性极大地降低了学习成本。一旦你知道了 Get-Process,你就能很容易地猜出 Get-Service 是干什么的。
动手试一试:
请在您的 PowerShell ISE 下方的控制台窗格(蓝色部分)中,输入以下命令并按回车:
PowerShell Code:
1 Get-Process
你会立即看到一个表格,列出了当前系统上所有正在运行的进程信息,如进程名、PID(进程ID)、CPU 占用等。恭喜你,你已经成功执行了第一个 Cmdlet!
二、 你的终极武器:帮助系统 (Get-Help)
PowerShell 最强大的设计之一,就是其无所不包的帮助系统。Get-Help 这个 Cmdlet 是你未来自学任何命令的"瑞士军刀"。忘记命令用法?不需要去百度!直接用 Get-Help。
1. 查看最基本帮助
想知道一个 Cmdlet 是干什么的?最简单的方式是:
PowerShell Code:
1 Get-Help Get-Process
这会把 Get-Process 命令的用途、语法简介和参数说明显示出来。
2. 查看详细示例(新手最爱!)
对于初学者来说,最实用的功能是查看例子。使用 -Examples 参数:
PowerShell Code:
1 Get-Help Get-Process -Examples
这会直接显示若干个如何使用 Get-Process 的真实示例代码,你可以模仿着这些例子来学习。
3. 查看完整技术文档
当你需要深入了解每一个参数的细节时,使用 -Full 参数:
PowerShell Code:
1 Get-Help Get-Process -Full
这会显示包括参数类型、输入输出类型等在内的所有技术细节,非常详尽。
4. 在线查看(功能最全)
有些最详细的帮助文档(包括图形化说明)可以通过 -Online 参数在浏览器中打开:
PowerShell Code:
1 Get-Help Get-Process -Online
三、 首次运行前的重要步骤:更新帮助文档
由于安全策略,Windows 默认可能没有安装最新、最全的帮助文档。因此,我们强烈建议在开始学习前,先执行一次帮助文档的更新。
-
请务必使用管理员身份运行 PowerShell ISE(右键点击图标,选择"以管理员身份运行")。
-
在控制台中输入以下命令并回车:
PowerShell Code:
1 Update-Help
-
这个过程会从微软服务器下载所有模块的最新帮助文件,可能需要几分钟。请耐心等待它完成。
执行成功后,你之后使用 Get-Help 查看到的就是最新、最准确的信息了。
四、 核心技巧:善用参数和通配符
-
使用参数:参数让你能精确控制 Cmdlet 的行为。参数通常以连字符
-开头。-
例如,我不想看所有进程,只想看名为 "notepad" 的进程:
-
PowerShell Code:
1 Get-Process -Name notepad
-
使用通配符:PowerShell 支持
*(星号)作为通配符,代表任意字符。-
例如,我想查看所有名字以 "no" 开头的进程:
-
PowerShell Code:
1 Get-Process -Name no*
结语:从"记忆"到"理解"
学习 PowerShell,你不需要死记硬背成百上千的命令。你需要掌握的核心技能是:
-
理解
动词-名词的规律。 -
熟练使用
Get-Help和-Examples来随时查找和学习。
这就像是给了你一把能够打开所有知识大门的钥匙。从现在起,养成一个习惯:遇到任何不熟悉的 Cmdlet,第一反应就是输入 Get-Help <Cmdlet名称> -Examples。
在下一篇中,我们将学习如何像在笔记本上记笔记一样,使用变量来存储你的命令结果,让自动化成为可能。
浙公网安备 33010602011771号