PowerShell指令碼獲取磁碟空間兩例

2021-09-04 22:49:08 字數 735 閱讀 7356

需求背景:

伺服器運維管理人員,可能會常遇到這樣的工作需求:不定期了解windows伺服器系統儲存空間的大小,以便及時得到空間不足的資訊,從而盡早增加磁碟空間。

解決思路:

一、如果只想磁碟剩餘空間不足到一定閥值時,自動報警等。使用商業軟體如scom等可實現,使用開源軟體如nagios等亦可實現。(前提需要在客戶端系統上安裝外掛程式)

那究竟有否一種更為簡單的方法,不需要安裝外掛程式,就能很快得到空間使用情況呢?

答案是肯定的,那就是使用微軟的 powershell來實現。(指令碼的方式)

實現環境及案例:

有近二百臺 windows server 2003和windows server 2008伺服器,需要統計每台系統的磁碟空間(每個邏輯磁碟),已用空間,未用空間,及百分比。

利用powershell(2.0),在windows server 2008  及windows 7上實現。所有的這些機器均在同乙個域中。(這個很重要,涉及到執行賬號及許可權問題)

一、ps命令列介面輸出,或文字輸出

本圖中,可以利用》或》輸出到文字檔案中。這樣就能轉換成excel等。可以求各等。當你這些機器存在於儲存上時,就可以統計儲存空間啦。

二、html格式,同時以不同的色彩來顯示剩餘百分區(警示作用)

以上三例源**,老方均有,且稍做改變,如果你需要,可以聯絡我。

POWERSHELL指令碼執行許可權

powershell指令碼執行許可權 2009 02 04 16 55 02 分類 powershell 字型大小 訂閱 restricted 預設的設定,不允許任何script執行 allsigned 只能執行經過數字證書簽名的script unrestricted 允許所有的script執行 解...

PowerShell指令碼傳遞引數

在編寫powershell指令碼的時候,可以通過給變數賦值的方法輸出想要的結果,但這樣的話,需要改動指令碼內容。其實也可以在指令碼中定義引數,然後再在執行指令碼的時候對引數賦值,而無需改動指令碼內容。在powershell指令碼中,可以使用param 宣告引數,如下 param a,b write ...

PowerShell指令碼傳遞引數

在編寫powershell指令碼的時候,可以通過給變數賦值的方法輸出想要的結果,但這樣的話,需要改動指令碼內容。其實也可以在指令碼中定義引數,然後再在執行指令碼的時候對引數賦值,而無需改動指令碼內容。在powershell指令碼中,可以使用param 宣告引數,如下 param a,b write ...