PowerShell娘
微軟繪製的 PowerShell 娘形象 | |
基本資料 | |
本名 | PowerShell |
---|---|
髮色 | 紫髮 |
瞳色 | 白瞳 |
出身地區 | 米帝 |
活動範圍 | 世界 |
所屬團體 | 微軟 |
親屬或相關人 | |
Microsoft Azure娘 Visual Studio娘 |
PowerShell娘是微軟出品的自動化和命令行工具PowerShell(Core)的擬人化萌娘。
簡介
PowerShell 為解決 Windows 平台上自動化工具不統一,不完善,組件之間不協調,以及文檔不夠詳細的諸多問題而生。它從 2002 年開始開發,並在 2006 年正式推出。經過數年的發展,PowerShell 在隨後的 Windows 和其他在線服務中被廣泛運用於管理和自動化操作。從 Windows 7 和 Windows Server 2008 R2 開始,PowerShell 作為系統組件的一部分隨系統一起分發。如今 PowerShell 已經成為了 Windows 上自動化方案的事實標準之一。
PowerShell 現在已經開源,並同時支持 Windows, Linux 和 macOS 三大平台,解決了依賴 PowerShell 的程序的跨平台移植問題,並為其他平台帶來新的面向對象的自動化和命令行方案。
特點
PowerShell 娘最大的特點之一就是囉嗦。在 PowerShell 里,大部分命令都非常冗長,因為 PowerShell 的初衷並不是給用戶日常使用,而是在集成環境中編輯好自動化腳本,然後在自動化環境中運行。而且如果命令稍有錯誤,就會給出非常長的錯誤提示,比如像下面這樣:
... : The term '...' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
+ ...
+ ~~~
+ CategoryInfo : ObjectNotFound: (...:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
PowerShell 娘:哼,出點小錯我就掀桌給你看。(╯‵□′)╯︵┻━┻
因為 PowerShell 是一種面向對象的腳本語言,因此很多操作都和其他的 Shell 不一樣,比如 PowerShell 的管道符傳的是模塊自己定義的對象,而不是像其他 Shell 一樣簡單傳遞流。還有些時候,PowerShell 為了方便來自其他平台的用戶,好心辦壞事,自作多情地添加了一些命令的別名,比如常用的命令 curl
在 PowerShell 下對應的是 Invoke-WebRequest
,但是 PowerShell 並沒有完整實現原版的 curl 的所有功能,因此遭到用戶的抱怨(甚至是 curl 作者本人)。因為 Windows 內部的很多管理組件都是基於面向對象的,這種特性在進行一些 Windows 上的管理操作時很有用(比如從上一個命令中獲取的對象,修改之後,可以通過管道原樣提交更改)。但是在 PowerShell 跨平台之後,PowerShell 為了和其他平台的夥伴好好相處,也正在為同時實現多種管道系統而努力。
得益於 PowerShell 強大的擴展性,其他軟體開發商只需要編寫 .NET 類庫並實現 Cmdlet 相關的類,就可以為 PowerShell 添加新的命令。世界前幾大雲服務提供商都在 Windows 下提供了 PowerShell 擴展以方便客戶在 Windows 下使用 PowerShell 腳本來快速一些如產品部署到生產環境等繁瑣重複的自動化操作。由於 PowerShell 是面向對象的,編寫腳本時 IntelliSense 也能省去不少翻文檔的時間。
PowerShell娘和 Azure 娘關係極好。從內部工具到外部工具,PowerShell娘和 Azure 娘幾乎總是糾纏在一起。Azure 上的各種部署操作都難免會用到大量 PowerShell 腳本(雖然也可以使用 Azure CLI)。微軟大家族裡的其他企業軟體,如 Exchange, SharePoint 也大量依賴 PowerShell 來進行管理操作。
形象
PowerShell 娘的形象在 Github 上關於 PowerShell Core 和 Windows PowerShell 圖標近似的問題討論中首次現身。在圖中,PowerShell 娘以超人形象出現,手裡像是充滿了力量,和 PowerShell 名字相呼應。
儘管因為和任務欄搭配的違和感太嚴重,PowerShell 娘最後並沒有成為 PowerShell Core 的默認圖標,但是 PowerShell 娘的形象會在 PowerShell Core 的安裝包歡迎界面中出現。除了認為作為任務欄圖標過於違和的聲音之外,一部分討論頁的吃瓜群眾認為微軟美工畫的 PowerShell 娘形象面部太過於凶神惡煞,應該畫一個更萌的。另有一群吃瓜群眾對使用 PowerShell 娘形象作為圖標全力支持。
後來微軟出了一部美漫作品:《NANOMAN: SERVER OF THE REALM》,讓我們得以見到官方娘化作品。
外部連結
- PowerShell 文檔官網 (英文)
- PowerShell Core 原始碼 (英文)
- PowerShell Core 圖標相關問題討論 (英文)
- PowerShell 娘相關素材的 Pull Request (英文)
- 微軟商店頁面