使用PowerShell刪除Azure訂閱中沒有任何資源的資源群組

先前提到,在我棄明投暗開始改用CLI之後,Windows世界裡的PowerShell我當然不可能不去碰。對PowerShell來說,我應該算是新手(資訊界非常有趣,每隔一段時間你就會自動升級為新手,偶而享受一下可以亂做一些蠢事的新手禮遇其實還挺不錯)。

而對新手來說,認識某一種工具或技術的第一件事情,當然就是拿它來弄出一個自己需要的解決方案。PowerShell對我最大的用途當然是控制Azure訂閱,而第一個讓我想幹的解決方案就是,殺光…空著的資源群組。

不知道你有沒有跟我一樣的問題,你知道,Microsoft很大方地給開發人員Azure Free trial帳號、visual studio dev essentials、上課的Azure Pass…等諸多Azure資源。這導致我有非常多的Microsoft Account(MSA)、每個Account底下有非常多的Subscription,每個Subscription底下有一堆常常移動過來移動過去的Resource Group…箇中原由就暫且不表(內行人一定知道)…

當我把Resource Group在subscription之間移來移去的過程中,總是會留下很多空的Resource Group,這很煩、很難看、很難管…

所以我閒暇之餘常常從Azure Portal進去,一個一個Resource Group點進去看看裡面有沒有Resource(這很白癡,對,我知道…)如果是空著的話我就刪除它…很久很久以前我就知道這樣很蠢,根本不是辦法…應該要寫個script去處理它…

但一來沒空二來我內心掙扎不想碰CLI,所以連帶PowerShell也不太動手…好啦,現在我洗心革面棄明投暗之後,第一件解決自己問題的PowerShell巨作,當然就是寫一個刪除empty resource group的script…

寫完之後的結果如下:

由於用到了PowerShell的az Module,如果你要拿去玩耍的話,請記得使用底下指令安Az Module:

Install-Module -Name Az –AllowClobber

相關資訊可以參考: https://docs.microsoft.com/zh-tw/powershell/azure/install-az-ps?view=azps-2.4.0

如果你用PowerShell ISE執行的話,刪起來還蠻過癮的…

要不要拿去試試看? Enjoy it :)

不負責任聲明…

對了,請特別留意,別忘了上面這段code是新手之作,一出手就用 Remove-AzResourceGroup 指令移除整個 resource group,萬一有bug導致發生誤刪resource group的慘案發生,請千萬不要回來找我

留言

這個網誌中的熱門文章

在POC或迷你專案中使用 LiteDB

使用Qdrant向量資料庫實作語意相似度比對

使用 Airtable 在小型需求上取代傳統資料庫

專業的價值...

周末讀書會 - 一如既往