免费磁盘监控 Windows 2012 - powershell

免费磁盘监控 Windows 2012 - powershell

我从头开始学习如何监控我们的服务器(仅一台)。

$dates=(get-date).ToString("s").Replace(":","-")

$page="page"+$dates+".csv"
get-wmiobject win32_pagefileusage | export-csv -path c:\tio\$page

$hyperpage="hyperpage"+$dates+".csv"
get-wmiobject win32_pagefileusage -computer Hyper | export-csv -path c:\tio\$hyperpage

$hyper="hyper"+$dates+".csv"
get-wmiobject win32_logicaldisk -computer Hyper | select-object -property DeviceID, FreeSpace, Size | Export-csv -path c:\tio\$hyper

$image="image"+$dates+".csv"
get-wmiobject win32_logicaldisk | select-object -property DeviceID, FreeSpace, Size | Export-csv -path c:\tio\$image

我的目标是找出 hyper-v 和虚拟主机上的可用空间是如何增长的。

是否可以将它们合并在一起,因为此时它会变成 4 个文件。我想保持低性能但尽可能合并。因此最好的办法是附加功能,但除非必须,否则我不想每次都上传内存中的整个文件。

提前谢谢了

答案1

如果我理解了您的要求,我认为简单的解决方案是 export-csv 包含一个-Append选项,这样您就可以继续将内容附加到文件中(尽管由于您根据精确到秒的日期/时间创建文件名,我不确定这样做能达到多大的效果)。例如,如果您想每天保存它,您可以尝试类似以下操作(我添加了,-NoTypeInformation因为 csv 中的类型信息通常会让我烦恼,除非您需要它来重建对象,而在本例中我们不需要它):

$dates=get-date -Format "yyyy-MM-dd"

$page="page$($dates).csv"
get-wmiobject win32_pagefileusage | export-csv -path c:\tio\$page -Append -NoTypeInformation

$hyperpage="hyperpage$($dates).csv"
get-wmiobject win32_pagefileusage -computer Hyper | export-csv -path c:\tio\$hyperpage -Append -NoTypeInformation

$hyper="hyper$($dates).csv"
get-wmiobject win32_logicaldisk -computer Hyper | select-object -property DeviceID, FreeSpace, Size | Export-csv -path c:\tio\$hyper -Append -NoTypeInformation

$image="image$($dates).csv"
get-wmiobject win32_logicaldisk | select-object -property DeviceID, FreeSpace, Size | Export-csv -path c:\tio\$image -Append -NoTypeInformation

相关内容