我正在尋找一種方法來監視資料夾(所有文件和子資料夾)的大小。如果達到一定的大小,應該會出現某種訊息。此訊息應在 Windows 從關閉、休眠或睡眠狀態啟動後顯示(或按時間間隔 - 至少每天一次)。
我更喜歡一種可以透過標準 Windows 功能、工具或腳本來實現的方法。但如果您知道能夠做到這一點的第 3 方軟體,歡迎您提出建議(如果可能的話,提供螢幕截圖和一些解釋)。謝謝!
請注意:
如果您建議使用第三方監控軟體,請確保它可以監控資料夾大小並觸發正確的警報。
如果您建議一個腳本,一個基本的範例會很好,並且對我來說已經足夠了(這樣我就有了一個自己創建它的起點)
答案1
使用以下程式碼建立 powershell 腳本:
if((Get-Item \\server\file).length -gt 1.5GB) {
[System.Windows.MessageBox]::Show('Folder X has exceeded 1.5GB')
}
然後建立一個在登入時執行的排程任務,並在此後定期呼叫該腳本。
該腳本會檢查檔案或資料夾大小,如果超過 1.5GB,則會觸發包含該訊息的訊息方塊。
答案2
@music2myear 的帖子要好得多,但我的方法略有不同。
使用以下命令建立 .ps1(powershell 檔案):
$size = ((Get-ChildItem C:\users\ -Recurse | Measure-Object -Property Length -Sum -ErrorAction Stop).Sum)
if ($size -gt 3.5GB)
{
$wshell = New-Object -ComObject Wscript.Shell
$wshell.Popup("C:\users folder is bigger than 3.5 Gb",0,"Done",0x1)
}
這將產生一個彈出窗口,提示該C:\Users
資料夾比其他資料夾大3.5 GB
,不會執行任何操作。然後,您可以將此 .ps1 檔案彈出到要在使用者登入時執行的排程任務中或在使用者的登入腳本中(如果您位於網域中)。 (計劃任務可能更容易)。