PowerShell 命令的已批准谓词
PowerShell 对 cmdlet 的名称及其派生的 .NET 类使用谓词-名词对。
名称的谓词部分标识 cmdlet 执行的操作。 名称的名词部分标识在其中执行操作的实体。 例如,Get-Command
cmdlet 可检索在 PowerShell 中注册的所有命令。
备注
PowerShell 使用“谓词”一词来描述某个表示动作的单词,即使该词并不是英语中的标准谓词。 例如,“New”一词是有效的 PowerShell 谓词名称,因为它表示某个动作,而该词在英语中并不是谓词。
每个已批准谓词都定义了相应的别名前缀。 我们会对使用该谓词的命令使用别名中的这一别名前缀。 例如,Import
的别名前缀为 ip
,相应地,Import-Module
的别名为 ipmo
。 这是一种建议,并不是规则;特别是对于模仿其他环境中的常见命令的命令别名,无需遵守该建议。
谓词命名建议
以下建议有助于为 cmdlet 选择适当的谓词,以确保你创建的 cmdlet、PowerShell 提供的 cmdlet 和其他人设计的 cmdlet 一致。
- 使用 PowerShell 提供的某一个预定义谓词名称
- 使用谓词描述操作的一般范围,然后使用参数进一步优化 cmdlet 的操作。
- 请勿使用已批准谓词的同义词。 例如,始终使用
Remove
,切勿使用Delete
或Eliminate
。 - 仅使用本主题中列出的每个谓词的形式。 例如,使用
Get
,不要使用Getting
或Gets
。 - 请勿使用以下预留谓词或别名。 PowerShell 语言和少数几个 cmdlet 在异常情况下使用这些谓词。
- ForEach (foreach)
- Ping (pi)
- Sort (sr)
- Tee (te)
- Where (wh)
可以使用 Get-Verb
cmdlet 获取谓词的完整列表。
不同操作的类似谓词
以下类似谓词表示不同的操作。
新建与添加
使用谓词 New
新建资源。 Add
使用将某些内容添加到现有容器或资源中。 例如, Add-Content
将输出添加到现有文件。
New 与设置
使用谓词 New
新建资源。 使用谓词 Set
修改现有资源,如果没有现有资源,可以选择创建一个,例如 Set-Variable
cmdlet。
Find 与搜索
使用谓词 Find
查找对象。 使用谓词 Search
创建对容器中资源的引用。
Get 与读取
使用谓词 Get
获取资源(例如文件)相关信息,或获取用于后续访问该资源的对象。 Read
使用谓词打开资源并提取中包含的信息。
Invoke 与开始
使用谓词 Invoke
执行同步操作,例如运行命令并等待命令结束。 Start
使用谓词开始异步操作,如启动自治进程。
Ping 与测试
使用谓词 Test
。
常用谓词
PowerShell 使用 System.Management.Automation.VerbsCommon 枚举类来定义可应用于几乎所有 cmdlet 的常规操作。 下表列出了大多数已定义谓词。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Add (a) | 将资源添加到容器,或将某一项附加到另一个项。 例如,Add-Content cmdlet 可向文件添加内容。 该谓词与 Remove 成对。 |
Append、Attach、Concatenate、Insert |
Clear (cl) | 删除容器中的所有资源,但不删除容器。 例如,Clear-Content cmdlet 可删除文件的内容,但不删除文件。 |
Flush、Erase、Release、Unmark、Unset、Nullify |
Close (cs) | 更改资源的状态,使其不可访问、不适用或不可用。 该谓词与 Open. 成对 |
|
Copy (cp) | 将资源复制到另一个名称或另一个容器。 例如,Copy-Item cmdlet 将项(如文件)从数据存储中的一个位置复制到另一个位置。 |
Duplicate、Clone、Replicate、Sync |
Enter (et) | 指定可让用户移动到资源中的操作。 例如,Enter-PSSession cmdlet 将用户置于交互式会话中。 该谓词与 Exit 成对。 |
Push、Into |
Exit (ex) | 将当前环境或上下文设置为最近使用的上下文。 例如,Exit-PSSession cmdlet 将用户置于用于启动交互式会话的会话中。 该谓词与 Enter 成对。 |
Pop、Out |
Find (fd) | 查找容器中未知、隐含、可选或指定的对象。 | 搜索 |
格式 (f) | 以指定的窗体或布局排列对象 | |
Get (g) | 指定可检索资源的操作。 该谓词与 Set 成对。 |
Read、Open、Cat、Type、Dir、Obtain、Dump、Acquire、Examine、Find、Search |
Hide (h) | 使资源不可检测。 例如,名称包含谓词“Hide”的 cmdlet 可能会对用户隐藏服务。 该谓词与 Show 成对。 |
阻止 |
Join (j) | 将多种资源合并为一种资源。 例如,Join-Path cmdlet 将路径与其某一子路径合并为一个路径。 该谓词与 Split 成对。 |
Combine、Unite、Connect、Associate |
Lock (lk) | 保护资源。 该谓词与 Unlock 成对。 |
Restrict、Secure |
Move (m) | 将资源从一个位置移动到另一个位置。 例如,Move-Item cmdlet 将项从数据存储中的一个位置移动到另一个位置。 |
Transfer、Name、Migrate |
New (n) | 创建资源。 (创建包含 Set-Variable cmdlet 等数据的资源时,也可以使用谓词 Set 。) |
Create、Generate、Build、Make、Allocate |
Open (op) | 更改资源的状态,使其可访问、适用或可用。 该谓词与 Close 成对。 |
|
Optimize (om) | 提高资源的有效性。 | |
Pop (pop) | 从堆栈顶部删除某一项。 例如,Pop-Location cmdlet 将当前位置更改为最近推入到堆栈中的位置。 |
|
Push (pu) | 向堆栈顶部添加某一项。 例如,Push-Location cmdlet 将当前位置推入到堆栈中。 |
|
Redo (re) | 将资源重置为撤消的状态。 | |
Remove (r) | 从容器中删除资源。 例如,Remove-Variable cmdlet 可删除变量及其值。 该谓词与 Add 成对。 |
Clear、Cut、Dispose、Discard、Erase |
Rename (rn) | 更改资源的名称。 例如,用于访问存储数据的 Rename-Item cmdlet 可更改数据存储中项的名称。 |
更改 |
Reset (rs) | 将资源设置回其初始状态。 | |
Resize(rz) | 更改资源大小。 | |
Search (sr) | 创建对容器中资源的引用。 | Find、Locate |
Select (sc) | 查找容器中的资源。 例如,Select-String cmdlet 可查找字符串和文件中的文本。 |
Find、Locate |
Set (s) | 替换现有资源上的数据或创建包含某些数据的资源。 例如,Set-Date cmdlet 可更改本地计算机上的系统时间。 (谓词 New 还可用于创建资源。)该谓词与 Get 成对。 |
Write、Reset、Assign、Configure |
Show (sh) | 使资源对用户可见。 该谓词与 Hide 成对。 |
Display、Produce |
Skip (sk) | 绕过序列中的一个或多个资源或点。 | Bypass、Jump |
Split (sl) | 分离资源的各个部分。 例如,Split-Path cmdlet 可返回路径的不同部分。 该谓词与 Join 成对。 |
独立 |
Step (st) | 移动到序列中的下一个点或资源。 | |
Switch (sw) | 指定在两种资源之间切换的操作,例如在两个位置、职责或状态之间进行切换。 | |
Undo (un) | 将资源设置为其以前的状态。 | |
Unlock (uk) | 释放锁定的资源。 该谓词与 Lock 成对。 |
Release、Unrestrict、Unsecure |
Watch (wc) | 持续检查或监视资源是否发生更改。 |
通信谓词
PowerShell 使用 System.Management.Automation.VerbsCommunications 类来定义适用于通信的操作。 下表列出了大多数已定义谓词。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Connect (cc) | 在源和目标之间创建链接。 该谓词与 Disconnect 成对。 |
Join、Telnet |
Disconnect (dc) | 断开源和目标之间的链接。 该谓词与 Connect 成对。 |
Break、Logoff |
Read (rd) | 从源获取信息。 该谓词与 Write 成对。 |
Acquire、Prompt、Get |
Receive (rc) | 接受从源发送的信息。 该谓词与 Send 成对。 |
Read、Accept、Peek |
Send (sd) | 将信息传递到目标。 该谓词与 Receive 成对。 |
Put、Broadcast、Mail、Fax |
Write (wr) | 向目标添加信息。 该谓词与 Read 成对。 |
Put、Print |
数据谓词
PowerShell 使用 System.Management.Automation.VerbsData 类来定义适用于数据处理的操作。 下表列出了大多数已定义谓词。
谓词名称(别名) | 操作 | 要避免的同义词 |
---|---|---|
Backup (ba) | 通过复制数据来存储数据。 | Save、Burn、Replicate、Sync |
Checkpoint (ch) | 创建数据当前状态的快照或数据配置的快照。 | 差异 |
Compare (cr) | 根据某一资源中的数据评估另一资源中的数据。 | 差异 |
Compress (cm) | 压缩资源的数据。 与 Expand 成对。 |
精简 |
Convert (cv) | cmdlet 支持双向转换或 cmdlet 支持多种数据类型之间的转换时,将数据从一种表示形式更改为另一种表示形式。 | Change、Resize、Resample |
ConvertFrom (cf) | 将一种主要的输入类型(cmdlet 名词表示输入)转换为一种或多种支持的输出类型。 | Export、Output、Out |
ConvertTo (ct) | 从一种或多种类型的输入转换为主要的输出类型(cmdlet 名词表示输出类型)。 | Import、Input、In |
Dismount (dm) | 从位置拆离命名实体。 该谓词与 Mount 成对。 |
Unmount、Unlink |
Edit (ed) | 通过添加或删除内容来修改现有数据。 | Change、Update、Modify |
Expand (en) | 将已压缩的资源的数据还原到其初始状态。 该谓词与 Compress 成对。 |
Explode、Uncompress |
Export (ep) | 将主要输入封装到永久性数据存储(例如文件),或封装为交换格式。 该谓词与 Import 成对。 |
Extract、Backup |
组 (gp) | 排列或关联一个或多个资源 | |
Import (ip) | 从永久性数据存储(例如文件)中存储的或以交换格式存储的数据创建资源。 例如,Import-CSV cmdlet 将数据从逗号分隔值 (CSV) 文件导入到其他 cmdlet 可以使用的对象。 该谓词与 Export 成对。 |
BulkLoad、Load |
Initialize (in) | 准备要使用的资源,并将其设置为默认状态。 | Erase、Init、Renew、Rebuild、Reinitialize、Setup |
Limit (l) | 对资源应用约束。 | Quota |
Merge (mg) | 根据多个资源创建一个资源。 | Combine、Join |
Mount (mt) | 将命名实体附加到某一位置。 该谓词与 Dismount 成对。 |
连接 |
Out (o) | 将数据发送到环境之外。 例如,Out-Printer cmdlet 将数据发送到打印机。 |
|
Publish (pb) | 使资源可供他人使用。 该谓词与 Unpublish 成对。 |
Deploy、Release、Install |
Restore (rr) | 将资源设置为预定义状态,例如 Checkpoint 设置的状态。 例如,Restore-Computer cmdlet 可在本地计算机上启动系统还原。 |
Repair、Return、Undo、Fix |
Save (sv) | 保留数据以免丢失。 | |
Sync (sy) | 确保两种及以上的资源处于相同状态。 | Replicate、Coerce、Match |
Unpublish (ub) | 使资源不可供他人使用。 该谓词与 Publish 成对。 |
Uninstall、Revert、Hide |
Update (ud) | 将资源更新为最新内容,以保持其状态、准确性、一致性或合规性。 例如,Update-FormatData cmdlet 会更新格式化文件并将其添加到当前的 PowerShell 控制台。 |
Refresh、Renew、Recalculate、Re-index |
诊断谓词
PowerShell 使用 System.Management.Automation.VerbsDiagnostic 类来定义适用于诊断的操作。 下表列出了大多数已定义谓词。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Debug (db) | 检查资源以诊断操作问题。 | 诊断 |
Measure (ms) | 标识指定操作使用的资源,或检索关于资源的统计信息。 | Calculate、Determine、Analyze |
Ping (pi) | 弃用-改为使用测试谓词。 | |
Repair (rp) | 将资源还原为可用状态 | Fix、Restore |
Resolve (rv) | 将资源的简略表示形式映射为更完整的表示形式。 | Expand、Determine |
Test (t) | 验证资源的操作或一致性。 | Diagnose、Analyze、Salvage、Verify |
Trace (tr) | 跟踪资源的活动。 | Track、Follow、Inspect、Dig |
生命周期谓词
PowerShell 使用 System.Management.Automation.VerbsLifeCycle 类来定义适用于资源生命周期的操作。 下表列出了大多数已定义谓词。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Approve (ap) | 确认或同意资源或进程的状态。 | |
Assert (as) | 确认资源的状态。 | Certify |
Build (bd) | 根据某一组输入文件(通常是源代码或声明性文件)创建项目(通常是二进制文件或文档)。该谓词是在 PowerShell 6 中添加的。 | |
Complete (cp) | 结束操作。 | |
Confirm (cn) | 确认、证实或验证资源或进程的状态。 | Acknowledge、Agree、Certify、Validate、Verify |
Deny (dn) | 拒绝、反对、阻止或抵制资源或进程的状态。 | Block、Object、Refuse、Reject |
Deploy (dp) | 将应用程序、网站或解决方案发送到远程目标,以便解决方案的使用者可以在部署完成后对其进行访问。 该谓词是在 PowerShell 6 中添加的。 | |
Disable (d) | 将资源配置为不可用或非活动状态。 例如,Disable-PSBreakpoint cmdlet 使断点处于非活动状态。 该谓词与 Enable 成对。 |
Halt、Hide |
Enable (e) | 将资源配置为可用或活动状态。 例如,Enable-PSBreakpoint cmdlet 使断点处于活动状态。 该谓词与 Disable 成对。 |
Start、Begin |
Install (is) | 将资源置于某个位置,并根据需要对其进行初始化。 该谓词与 Uninstall 成对。 |
设置 |
Invoke (i) | 执行操作,例如运行命令或方法。 | Run、Start |
Register (rg) | 为存储库(例如数据库)中的资源创建一个条目。 该谓词与 Unregister 成对。 |
|
Request (rq) | 请求提供资源或请求权限。 | |
Restart (rt) | 停止操作,然后再次启动。 例如,Restart-Service cmdlet 可停止服务,然后再次启动。 |
再循环 |
Resume (ru) | 启动已挂起的操作。 例如,Resume-Service cmdlet 可启动已暂停的服务。 该谓词与 Suspend 成对。 |
|
Start (sa) | 启动操作。 例如,Start-Service cmdlet 可启动服务。 该谓词与 Stop 成对。 |
Launch、Initiate、Boot |
Stop (sp) | 停止活动。 该谓词与 Start 成对。 |
End、Kill、Terminate、Cancel |
Submit (sb) | 显示待审批的资源。 | 邮递 |
Suspend (ss) | 暂停活动。 例如,Suspend-Service cmdlet 可暂停服务。 该谓词与 Resume 成对。 |
暂停 |
Uninstall (us) | 从指示的位置删除资源。 该谓词与 Install 成对。 |
|
Unregister (ur) | 从存储库中删除资源的条目。 该谓词与 Register 成对。 |
删除 |
Wait (w) | 暂停操作,直到指定的事件发生。 例如,Wait-Job cmdlet 可暂停操作,直到一个或多个后台作业完成为止。 |
Sleep、Pause |
安全性谓词
PowerShell 使用 System.Management.Automation.VerbsSecurity 类来定义适用于安全性的操作。 下表列出了大多数已定义谓词。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Block (bl) | 限制对资源的访问。 该谓词与 Unblock 成对。 |
Prevent、Limit、Deny |
Grant (gr) | 允许对资源的访问。 该谓词与 Revoke 成对。 |
Allow、Enable |
Protect (pt) | 保护资源,以免受攻击或损失。 该谓词与 Unprotect 成对。 |
Encrypt、Safeguard、Seal |
Revoke (rk) | 指定不允许访问资源的操作。 该谓词与 Grant 成对。 |
Remove、Disable |
Unblock (ul) | 删除对资源的限制。 该谓词与 Block 成对。 |
Clear、Allow |
Unprotect (up) | 从资源中删除为免受攻击或损失而添加的保护措施。 该谓词与 Protect 成对。 |
Decrypt、Unseal |
其他谓词
PowerShell 使用 System.Management.Automation.VerbsOther 类来定义不适合特定谓词名称类别(例如常用谓词、通信谓词、数据谓词、生命周期谓词或安全性谓词名称谓词)的规范谓词名称。
谓词(别名) | 操作 | 要避免的同义词 |
---|---|---|
Use (u) | 使用或加入资源以执行某些操作。 |
另请参阅
- System.Management.Automation.VerbsCommon
- System.Management.Automation.VerbsCommunications
- System.Management.Automation.VerbsData
- System.Management.Automation.VerbsDiagnostic
- System.Management.Automation.VerbsLifeCycle
- System.Management.Automation.VerbsSecurity
- System.Management.Automation.VerbsOther
- Cmdlet 声明
- Windows PowerShell 程序员指南
- Windows PowerShell Shell SDK
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈