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
使用 New 動詞來建立新的資源。 使用 Add 將專案新增至現有的容器或資源。 例如,Add-Content 將輸出新增至現有的檔案。
New 與 Set
使用 New 動詞來建立新的資源。
Set使用動詞來修改現有的資源,如果不存在,可以選擇性地建立它,例如 Set-Variable Cmdlet。
Find 與 Search
使用 Find 動詞來尋找物件。 使用 Search 動詞來建立容器中資源的參考。
Get 與 Read
使用 Get 動詞來取得資源的相關信息(例如檔案),或取得您未來可存取資源的物件。 使用 Read 動詞來開啟資源,並擷取內含的資訊。
Invoke 與 Start
使用 Invoke 動詞來執行同步作業,例如執行命令並等候命令結束。 使用 Start 動詞來開始異步作,例如啟動自發程式。
Ping 與 Test
使用 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 會將專案從數據存放區中的某個位置複製到另一個位置。 |
重複、複製、復寫、同步 |
Enter (et) |
指定可讓使用者移至資源的動作。 例如,Enter-PSSession Cmdlet 會將使用者放在互動式會話中。 這個動詞命令會與 Exit配對。 |
推送、進入 |
Exit (ex) |
將目前的環境或內容設定為最近使用的內容。 例如,Exit-PSSession Cmdlet 會將使用者放在用來啟動互動式會話的會話中。 這個動詞命令會與 Enter配對。 |
Pop、Out |
Find (fd) |
在容器中尋找未知、隱含、選擇性或指定的物件。 | 搜尋 |
Format (f) |
以指定的表單或版面配置排列物件 | |
Get (g) |
指定擷取資源的動作。 這個動詞命令會與 Set配對。 |
讀取、打開、貓、鍵入、目錄、獲取、轉儲、獲取、檢查、查找、搜索 |
Hide (h) |
讓資源無法偵測。 例如,名稱包含Hide動詞的 Cmdlet 可能會隱藏用戶的服務。 這個動詞命令會與 Show配對。 |
封鎖 |
Join (j) |
將資源合併成一個資源。 例如,Join-Path Cmdlet 會將路徑與其其中一個子路徑結合,以建立單一路徑。 這個動詞命令會與 Split配對。 |
Combine、Unite、Connect、Associate |
Lock (lk) |
保護資源。 這個動詞命令會與 Unlock配對。 |
限制、安全 |
Move (m) |
將資源從一個位置移至另一個位置。 例如,Move-Item Cmdlet 會將專案從數據存放區中的某個位置移至另一個位置。 |
傳輸、名稱、移轉 |
New (n) |
建立資源。 (建立包含數據的資源時,也可以使用 Set 動詞,例如 Set-Variable Cmdlet。 |
建立、產生、建置、製作、配置 |
Open (op) |
變更資源的狀態,使其可供存取、使用或使用。 這個動詞命令會與 Close配對。 |
|
Optimize (om) |
提高資源的有效性。 | |
Pop (pop) |
從堆疊頂端移除專案。 例如,Pop-Location Cmdlet 會將目前的位置變更為最近推送至堆棧的位置。 |
|
Push (pu) |
將專案加入堆疊頂端。 例如,Push-Location Cmdlet 會將目前的位置推送至堆疊。 |
|
Redo (re) |
將資源重設為已復原的狀態。 | |
Remove (r) |
從容器刪除資源。 例如,Remove-Variable Cmdlet 會刪除變數及其值。 這個動詞命令會與 Add配對。 |
清除、剪下、處置、捨棄、清除 |
Rename (rn) |
變更資源的名稱。 例如,用來存取預存數據的 Rename-Item Cmdlet 會變更資料存放區中的專案名稱。 |
改變 |
Reset (rs) |
將資源設定回其原始狀態。 | |
Resize(rz) |
變更資源的大小。 | |
Search (sr) |
建立容器中資源的參考。 | 尋找、尋找 |
Select (sc) |
找出容器中的資源。 例如,Select-String Cmdlet 會尋找字串和檔案中的文字。 |
尋找、尋找 |
Set (s) |
取代現有資源上的數據,或建立包含某些數據的資源。 例如,Set-Date Cmdlet 會變更本機電腦上的系統時間。 (New 動詞也可以用來建立資源。這個動詞命令會與 Get配對。 |
寫入、重設、指派、設定、更新 |
Show (sh) |
讓使用者看到資源。 這個動詞命令會與 Hide配對。 |
顯示、產生 |
Skip (sk) |
略過序列中的一或多個資源或點。 | 略過、跳躍 |
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、Login |
Disconnect (dc) |
中斷來源與目的地之間的連結。 這個動詞命令會與 Connect配對。 |
中斷、註銷 |
Read (rd) |
從來源取得資訊。 這個動詞命令會與 Write配對。 |
取得、提示、取得 |
Receive (rc) |
接受從來源傳送的資訊。 這個動詞命令會與 Send配對。 |
讀取、接受、查看 |
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) |
建立數據或其組態目前狀態的快照集。 | Diff |
Compare (cr) |
根據另一個資源的數據,評估某個資源的數據。 | Diff |
Compress (cm) |
壓縮資源的數據。 與 Expand配對。 |
緊湊 |
Convert (cv) |
當 Cmdlet 支援雙向轉換或 Cmdlet 支援多個資料類型之間的轉換時,將數據從一個表示法變更為另一個表示法。 | 變更、重設大小、重新取樣 |
ConvertFrom (cf) |
將一個主要類型的輸入(Cmdlet 名詞表示輸入)轉換為一或多個支持的輸出類型。 | 匯出、輸出、輸出 |
ConvertTo (ct) |
從一或多個輸入類型轉換成主要輸出類型(Cmdlet 名詞表示輸出類型)。 | 匯入、輸入、In |
Dismount (dm) |
將具名實體與位置中斷連結。 這個動詞命令會與 Mount配對。 |
取消掛接、取消連結 |
Edit (ed) |
藉由新增或移除內容來修改現有的數據。 | 變更、更新、修改 |
Expand (en) |
還原已壓縮至其原始狀態的資源數據。 這個動詞命令會與 Compress配對。 |
爆炸、解壓縮 |
Export (ep) |
將主要輸入封裝到持續性數據存放區,例如檔案或交換格式。 這個動詞命令會與 Import配對。 |
擷取、備份 |
Group (gp) |
排列或關聯一或多個資源 | |
Import (ip) |
從儲存在永續性數據存放區(例如檔案)或交換格式的數據建立資源。 例如,Cmdlet 會將 Import-Csv 數據從逗號分隔值 (CSV) 檔案匯入至其他 Cmdlet 可以使用的物件。 這個動詞命令會與 Export配對。 |
BulkLoad、Load |
Initialize (in) |
準備資源以供使用,並將它設定為默認狀態。 | Erase、Init、Renew、Rebuild、Reinitialize、Setup |
Limit (l) |
將條件約束套用至資源。 | 配額 |
Merge (mg) |
從多個資源建立單一資源。 | 合併、聯結 |
Mount (mt) |
將具名實體附加至位置。 這個動詞命令會與 Dismount配對。 |
連線 |
Out (o) |
將數據從環境傳送出去。 例如,Out-Printer Cmdlet 會將數據傳送至印表機。 |
|
Publish (pb) |
讓資源可供其他人使用。 這個動詞命令會與 Unpublish配對。 |
部署、發行、安裝 |
Restore (rr) |
將資源設定為預先定義的狀態,例如 Checkpoint所設定的狀態。 例如,Restore-Computer Cmdlet 會在本機電腦上啟動系統還原。 |
修復、傳回、復原、修正 |
Save (sv) |
保留數據以避免遺失。 | |
Sync (sy) |
確保兩個或多個資源處於相同的狀態。 | 復寫、強制、比對 |
Unpublish (ub) |
讓資源無法供其他人使用。 這個動詞命令會與 Publish配對。 |
卸載、還原、隱藏 |
Update (ud) |
讓資源 up-to日期維持其狀態、精確度、一致性或合規性。 例如,Update-FormatData Cmdlet 會更新並將格式化檔案新增至目前的 PowerShell 控制台。 |
重新整理、更新、重新計算、重新編製索引 |
診斷動詞
PowerShell 會使用 System.Management.Automation.VerbsDiagnostic 類別來定義套用至診斷的動作。 下表列出大部分已定義的動詞。
| 動詞 (別名) | 行動 | 要避免的同義字 |
|---|---|---|
Debug (db) |
檢查資源以診斷作業問題。 | 診斷 |
Measure (ms) |
識別指定作業所取用的資源,或擷取資源的相關統計數據。 | 計算、判斷、分析 |
Ping (pi) |
已淘汰 - 請改用測試動詞。 | |
Repair (rp) |
將資源還原至可使用的條件 | 修正、還原 |
Resolve (rv) |
將資源的速記表示對應至更完整的表示法。 | 展開、判斷 |
Test (t) |
驗證資源的作業或一致性。 | 診斷、分析、打撈、驗證 |
Trace (tr) |
追蹤資源的活動。 | 追蹤、追蹤、檢查、挖掘 |
生命周期動詞
PowerShell 會使用 System.Management.Automation.VerbsLifecycle 類別來定義套用至資源生命周期的動作。 下表列出大部分已定義的動詞。
| 動詞 (別名) | 行動 | 要避免的同義字 |
|---|---|---|
Approve (ap) |
確認或同意資源或進程的狀態。 | |
Assert (as) |
確認資源的狀態。 | 證明 |
Build (bd) |
從一組輸入檔中建立成品(通常是二進位檔或檔)。通常是原始程式碼或宣告式檔。此動詞已在PowerShell 6中新增。 | |
Complete (cp) |
結束作業。 | |
Confirm (cn) |
認可、驗證或驗證資源或進程的狀態。 | 認可、同意、認證、驗證、驗證 |
Deny (dn) |
拒絕、對象、區塊或反對資源或程序的狀態。 | Block、Object、Reject、Reject |
Deploy (dp) |
將應用程式、網站或解決方案傳送至遠端目標[s],讓該解決方案的取用者可以在部署完成之後存取它。 此動詞已在PowerShell 6中新增。 | |
Disable (d) |
將資源設定為無法使用或非使用中狀態。 例如,Disable-PSBreakpoint Cmdlet 會讓斷點變成非使用中狀態。 這個動詞命令會與 Enable配對。 |
Halt、Hide |
Enable (e) |
將資源設定為可用或作用中狀態。 例如,Enable-PSBreakpoint Cmdlet 會讓斷點變成作用中。 這個動詞命令會與 Disable配對。 |
開始,開始 |
Install (is) |
將資源放在某個位置,並選擇性地將其初始化。 這個動詞命令會與 Uninstall配對。 |
設定 |
Invoke (i) |
執行動作,例如執行命令或方法。 | 執行、啟動 |
Register (rg) |
為存放庫中的資源建立專案,例如資料庫。 這個動詞命令會與 Unregister配對。 |
|
Request (rq) |
要求資源或要求許可權。 | |
Restart (rt) |
停止作業,然後再次啟動它。 例如,Restart-Service Cmdlet 會停止,然後啟動服務。 |
回收 |
Resume (ru) |
啟動已暫停的作業。 例如,Resume-Service Cmdlet 會啟動已暫停的服務。 這個動詞命令會與 Suspend配對。 |
|
Start (sa) |
起始作業。 例如,Start-Service Cmdlet 會啟動服務。 這個動詞命令會與 Stop配對。 |
啟動、起始、開機 |
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 會暫停作業,直到一或多個背景作業完成為止。 |
睡眠、暫停 |
安全性動詞
PowerShell 會使用 System.Management.Automation.VerbsSecurity 類別來定義套用至安全性的動作。 下表列出大部分已定義的動詞。
| 動詞 (別名) | 行動 | 要避免的同義字 |
|---|---|---|
Block (bl) |
限制對資源的存取。 這個動詞命令會與 Unblock配對。 |
防止、限制、拒絕 |
Grant (gr) |
允許存取資源。 這個動詞命令會與 Revoke配對。 |
允許、啟用 |
Protect (pt) |
保護資源免於遭受攻擊或遺失。 這個動詞命令會與 Unprotect配對。 |
加密、保護、密封 |
Revoke (rk) |
指定不允許存取資源的動作。 這個動詞命令會與 Grant配對。 |
拿掉、停用 |
Unblock (ul) |
拿掉資源的限制。 這個動詞命令會與 Block配對。 |
清除、允許 |
Unprotect (up) |
從已新增的資源移除保護,以防止它遭到攻擊或遺失。 這個動詞命令會與 Protect配對。 |
解密、解除密封 |
其他動詞
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.Verbs生命週期
- System.Management.Automation.VerbsSecurity
- System.Management.Automation.VerbsOther
- Cmdlet 宣告
- Windows PowerShell Shell SDK