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)
- 排序 (sr)
- 發球 (te)
- Where (wh)
您可以使用 Get-Verb
Cmdlet 取得動詞的完整清單。
不同動作的類似動詞
下列類似的動詞代表不同的動作。
新增與新增
使用 New
動詞來建立新的資源。 使用 Add
將專案新增至現有的容器或資源。 例如,Add-Content
將輸出新增至現有的檔案。
新增與設定
使用 New
動詞來建立新的資源。 使用 Set
動詞來修改現有的資源,如果不存在,可以選擇性地建立它,例如 Set-Variable
Cmdlet。
尋找與搜尋
使用 Find
動詞來尋找物件。 使用 Search
動詞來建立容器中資源的參考。
取得與讀取
使用 Get
動詞來取得資源的相關信息(例如檔案),或取得您未來可存取資源的物件。 使用 Read
動詞來開啟資源,並擷取內含的資訊。
叫用與開始
使用 Invoke
動詞來執行同步作業,例如執行命令並等候命令結束。 使用 Start
動詞來開始異步作,例如啟動自發程式。
Ping 與測試
使用 Test
動詞。
常見動詞
PowerShell 會使用 System.Management.Automation.VerbsCommon 列舉類別來定義可套用至幾乎任何 Cmdlet 的泛型動作。 下表列出大部分已定義的動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
新增 (a) | 將資源新增至容器,或將專案附加至另一個專案。 例如,Add-Content Cmdlet 會將內容新增至檔案。 這個動詞命令會與 Remove 配對。 |
Append、Attach、Concatenate、Insert |
清除 (cl) | 從容器中移除所有資源,但不會刪除容器。 例如,Clear-Content Cmdlet 會移除檔案的內容,但不會刪除檔案。 |
Flush、Erase、Release、Unmark、Unset、Nullify |
關閉 (cs) | 變更資源的狀態,使其無法存取、無法使用或無法使用。 此動詞與 Open. |
|
複製 (cp) | 將資源複製到另一個名稱或另一個容器。 例如,Copy-Item Cmdlet 會將專案從數據存放區中的某個位置複製到另一個位置。 |
重複、複製、復寫、同步 |
輸入 (et) | 指定可讓使用者移至資源的動作。 例如,Enter-PSSession Cmdlet 會將使用者放在互動式會話中。 這個動詞命令會與 Exit 配對。 |
推送、進入 |
離開(例如) | 將目前的環境或內容設定為最近使用的內容。 例如,Exit-PSSession Cmdlet 會將使用者放在用來啟動互動式會話的會話中。 這個動詞命令會與 Enter 配對。 |
Pop、Out |
尋找 (fd) | 在容器中尋找未知、隱含、選擇性或指定的物件。 | 搜尋 |
格式 (f) | 以指定的表單或版面配置排列物件 | |
取得 (g) | 指定擷取資源的動作。 這個動詞命令會與 Set 配對。 |
Read, Open, Cat, Type, Dir, Obtain, Dump, Acquire, Examine, Find, Search |
隱藏 (h) | 讓資源無法偵測。 例如,名稱包含Hide動詞的 Cmdlet 可能會隱藏用戶的服務。 這個動詞命令會與 Show 配對。 |
封鎖 |
加入 (j) | 將資源合併成一個資源。 例如,Join-Path Cmdlet 會將路徑與其其中一個子路徑結合,以建立單一路徑。 這個動詞命令會與 Split 配對。 |
Combine、Unite、Connect、Associate |
鎖定 (lk) | 保護資源。 這個動詞命令會與 Unlock 配對。 |
限制、安全 |
移動 (m) | 將資源從一個位置移至另一個位置。 例如,Move-Item Cmdlet 會將專案從數據存放區中的某個位置移至另一個位置。 |
傳輸、名稱、移轉 |
新 (n) | 建立資源。 (建立包含數據的資源時,也可以使用 Set 動詞,例如 Set-Variable Cmdlet。 |
建立、產生、建置、製作、配置 |
Open (op) | 變更資源的狀態,使其可供存取、使用或使用。 這個動詞命令會與 Close 配對。 |
|
優化 (om) | 提高資源的有效性。 | |
流行 (pop) | 從堆疊頂端移除專案。 例如,Pop-Location Cmdlet 會將目前的位置變更為最近推送至堆棧的位置。 |
|
推播 (pu) | 將專案加入堆疊頂端。 例如,Push-Location Cmdlet 會將目前的位置推送至堆疊。 |
|
重做(re) | 將資源重設為已復原的狀態。 | |
移除 (r) | 從容器刪除資源。 例如,Remove-Variable Cmdlet 會刪除變數及其值。 這個動詞命令會與 Add 配對。 |
清除、剪下、處置、捨棄、清除 |
重新命名 (rn) | 變更資源的名稱。 例如,用來存取預存數據的 Rename-Item Cmdlet 會變更資料存放區中的專案名稱。 |
改變 |
重設 (rs) | 將資源設定回其原始狀態。 | |
重設大小(rz) | 變更資源的大小。 | |
搜尋 (sr) | 建立容器中資源的參考。 | 尋找、尋找 |
選取 (sc) | 找出容器中的資源。 例如,Select-String Cmdlet 會尋找字串和檔案中的文字。 |
尋找、尋找 |
集 (s) | 取代現有資源上的數據,或建立包含某些數據的資源。 例如,Set-Date Cmdlet 會變更本機電腦上的系統時間。 (New 動詞也可以用來建立資源。這個動詞命令會與 Get 配對。 |
寫入、重設、指派、設定、更新 |
顯示 (sh) | 讓使用者看到資源。 這個動詞命令會與 Hide 配對。 |
顯示、產生 |
略過 (sk) | 略過序列中的一或多個資源或點。 | 略過、跳躍 |
分割 (sl) | 分隔資源的部分。 例如,Split-Path Cmdlet 會傳回路徑的不同部分。 這個動詞命令會與 Join 配對。 |
分開 |
步驟 (st) | 移至序列中的下一個點或資源。 | |
開關(sw) | 指定在兩個資源之間交替的動作,例如在兩個位置、責任或狀態之間變更。 | |
復原 (un) | 將資源設定為其先前的狀態。 | |
解除鎖定 (uk) | 釋放已鎖定的資源。 這個動詞命令會與 Lock 配對。 |
Release、Unrestrict、Unsecure |
手錶 (wc) | 持續檢查或監視資源是否有變更。 |
通訊動詞
PowerShell 會使用 System.Management.Automation.VerbsCommunications 類別來定義套用至通訊的動作。 下表列出大部分已定義的動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
Connect (cc) | 建立來源與目的地之間的連結。 這個動詞命令會與 Disconnect 配對。 |
Join、Telnet、Login |
中斷連線 (dc) | 中斷來源與目的地之間的連結。 這個動詞命令會與 Connect 配對。 |
中斷、註銷 |
閱讀(rd) | 從來源取得資訊。 這個動詞命令會與 Write 配對。 |
取得、提示、取得 |
接收 (rc) | 接受從來源傳送的資訊。 這個動詞命令會與 Send 配對。 |
讀取、接受、查看 |
傳送 (sd) | 將信息傳遞至目的地。 這個動詞命令會與 Receive 配對。 |
Put、Broadcast、Mail、Fax |
寫(wr) | 將資訊新增至目標。 這個動詞命令會與 Read 配對。 |
Put、Print |
數據動詞
PowerShell 會使用 System.Management.Automation.VerbsData 類別來定義套用至數據處理的動作。 下表列出大部分已定義的動詞。
動詞名稱(別名) | 行動 | 要避免的同義字 |
---|---|---|
備份(ba) | 藉由復寫數據來儲存數據。 | Save、Burn、Replicate、Sync |
檢查點 (ch) | 建立數據或其組態目前狀態的快照集。 | 差異 |
比較 (cr) | 根據另一個資源的數據,評估某個資源的數據。 | 差異 |
壓縮 (cm) | 壓縮資源的數據。 與 Expand 配對。 |
緊湊 |
轉換 (cv) | 當 Cmdlet 支援雙向轉換或 Cmdlet 支援多個資料類型之間的轉換時,將數據從一個表示法變更為另一個表示法。 | 變更、重設大小、重新取樣 |
ConvertFrom (cf) | 將一個主要類型的輸入(Cmdlet 名詞表示輸入)轉換為一或多個支持的輸出類型。 | 匯出、輸出、輸出 |
ConvertTo (ct) | 從一或多個輸入類型轉換成主要輸出類型(Cmdlet 名詞表示輸出類型)。 | 匯入、輸入、In |
卸除 (dm) | 將具名實體與位置中斷連結。 這個動詞命令會與 Mount 配對。 |
取消掛接、取消連結 |
編輯 (ed) | 藉由新增或移除內容來修改現有的數據。 | 變更、更新、修改 |
展開 (en) | 還原已壓縮至其原始狀態的資源數據。 這個動詞命令會與 Compress 配對。 |
爆炸、解壓縮 |
匯出 (ep) | 將主要輸入封裝到持續性數據存放區,例如檔案或交換格式。 這個動詞命令會與 Import 配對。 |
擷取、備份 |
群組(gp) | 排列或關聯一或多個資源 | |
匯入 (ip) | 從儲存在永續性數據存放區(例如檔案)或交換格式的數據建立資源。 例如,Import-Csv Cmdlet 會將數據從逗號分隔值 (CSV) 檔案匯入至其他 Cmdlet 可以使用的物件。 這個動詞命令會與 Export 配對。 |
BulkLoad、Load |
初始化 (in) | 準備資源以供使用,並將它設定為默認狀態。 | Erase、Init、Renew、Rebuild、Reinitialize、Setup |
限制 (l) | 將條件約束套用至資源。 | 配額 |
合併(mg) | 從多個資源建立單一資源。 | 合併、聯結 |
山(mt) | 將具名實體附加至位置。 這個動詞命令會與 Dismount 配對。 |
連線 |
出 (o) | 將數據從環境傳送出去。 例如,Out-Printer Cmdlet 會將數據傳送至印表機。 |
|
發佈 (pb) | 讓資源可供其他人使用。 這個動詞命令會與 Unpublish 配對。 |
部署、發行、安裝 |
還原 (rr) | 將資源設定為預先定義的狀態,例如 Checkpoint 所設定的狀態。 例如,Restore-Computer Cmdlet 會在本機電腦上啟動系統還原。 |
修復、傳回、復原、修正 |
儲存 (sv) | 保留數據以避免遺失。 | |
同步 (sy) | 確保兩個或多個資源處於相同的狀態。 | 復寫、強制、比對 |
解除發佈 (ub) | 讓資源無法供其他人使用。 這個動詞命令會與 Publish 配對。 |
卸載、還原、隱藏 |
更新 (ud) | 讓資源 up-to日期維持其狀態、精確度、一致性或合規性。 例如,Update-FormatData Cmdlet 會更新並將格式化檔案新增至目前的 PowerShell 控制台。 |
重新整理、更新、重新計算、重新編製索引 |
診斷動詞
PowerShell 會使用 System.Management.Automation.VerbsDiagnostic 類別來定義套用至診斷的動作。 下表列出大部分已定義的動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
偵錯 (db) | 檢查資源以診斷作業問題。 | 診斷 |
量值 (毫秒) | 識別指定作業所取用的資源,或擷取資源的相關統計數據。 | 計算、判斷、分析 |
平(pi) | 已淘汰 - 請改用測試動詞。 | |
修復 (rp) | 將資源還原至可使用的條件 | 修正、還原 |
解決(rv) | 將資源的速記表示對應至更完整的表示法。 | 展開、判斷 |
測試 (t) | 驗證資源的作業或一致性。 | 診斷、分析、打撈、驗證 |
追蹤 (tr) | 追蹤資源的活動。 | 追蹤、追蹤、檢查、挖掘 |
生命周期動詞
PowerShell 會使用 System.Management.Automation.VerbsLifecycle 類別來定義套用至資源生命周期的動作。 下表列出大部分已定義的動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
核准 (ap) | 確認或同意資源或進程的狀態。 | |
Assert (as) | 確認資源的狀態。 | Certify |
組建 (bd) | 從一組輸入檔中建立成品(通常是二進位檔或檔)。通常是原始程式碼或宣告式檔。此動詞已在PowerShell 6中新增。 | |
完成 (cp) | 結束作業。 | |
確認 (cn) | 認可、驗證或驗證資源或進程的狀態。 | 認可、同意、認證、驗證、驗證 |
拒絕 (dn) | 拒絕、對象、區塊或反對資源或程序的狀態。 | Block、Object、Reject、Reject |
部署 (dp) | 將應用程式、網站或解決方案傳送至遠端目標[s],讓該解決方案的取用者可以在部署完成之後存取它。 此動詞已在PowerShell 6中新增。 | |
停用 (d) | 將資源設定為無法使用或非使用中狀態。 例如,Disable-PSBreakpoint Cmdlet 會讓斷點變成非使用中狀態。 這個動詞命令會與 Enable 配對。 |
Halt、Hide |
啟用 (e) | 將資源設定為可用或作用中狀態。 例如,Enable-PSBreakpoint Cmdlet 會讓斷點變成作用中。 這個動詞命令會與 Disable 配對。 |
開始,開始 |
安裝 (is) | 將資源放在某個位置,並選擇性地將其初始化。 這個動詞命令會與 Uninstall 配對。 |
設定 |
叫用 (i) | 執行動作,例如執行命令或方法。 | 執行、啟動 |
註冊 (rg) | 為存放庫中的資源建立專案,例如資料庫。 這個動詞命令會與 Unregister 配對。 |
|
要求 (rq) | 要求資源或要求許可權。 | |
重新啟動 (rt) | 停止作業,然後再次啟動它。 例如,Restart-Service Cmdlet 會停止,然後啟動服務。 |
回收 |
履歷(ru) | 啟動已暫停的作業。 例如,Resume-Service Cmdlet 會啟動已暫停的服務。 這個動詞命令會與 Suspend 配對。 |
|
開始 (sa) | 起始作業。 例如,Start-Service Cmdlet 會啟動服務。 這個動詞命令會與 Stop 配對。 |
啟動、起始、開機 |
停止(sp) | 停止活動。 這個動詞命令會與 Start 配對。 |
End、Kill、Terminate、Cancel |
提交 (sb) | 呈現資源以供核准。 | 貼文 |
暫停(ss) | 暫停活動。 例如,Suspend-Service Cmdlet 會暫停服務。 這個動詞命令會與 Resume 配對。 |
暫停 |
卸載 (我們) | 從指定的位置移除資源。 這個動詞命令會與 Install 配對。 |
|
取消註冊 (您的) | 從存放庫移除資源的專案。 這個動詞命令會與 Register 配對。 |
刪除 |
等候 (w) | 暫停作業,直到發生指定的事件為止。 例如,Wait-Job Cmdlet 會暫停作業,直到一或多個背景作業完成為止。 |
睡眠、暫停 |
安全性動詞
PowerShell 會使用 System.Management.Automation.VerbsSecurity 類別來定義套用至安全性的動作。 下表列出大部分已定義的動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
區塊 (bl) | 限制對資源的存取。 這個動詞命令會與 Unblock 配對。 |
防止、限制、拒絕 |
格蘭特(gr) | 允許存取資源。 這個動詞命令會與 Revoke 配對。 |
允許、啟用 |
保護 (pt) | 保護資源免於遭受攻擊或遺失。 這個動詞命令會與 Unprotect 配對。 |
加密、保護、密封 |
撤銷(rk) | 指定不允許存取資源的動作。 這個動詞命令會與 Grant 配對。 |
拿掉、停用 |
解除封鎖 (ul) | 拿掉資源的限制。 這個動詞命令會與 Block 配對。 |
清除、允許 |
取消保護(上) | 從已新增的資源移除保護,以防止它遭到攻擊或遺失。 這個動詞命令會與 Protect 配對。 |
解密、解除密封 |
其他動詞
PowerShell 會使用 System.Management.Automation.VerbsOther 類別來定義不符合特定動詞名稱類別的正式動詞名稱,例如一般、通訊、數據、生命週期或安全性動詞名稱動詞名稱動詞。
動詞 (別名) | 行動 | 要避免的同義字 |
---|---|---|
使用 (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