2012-02-11 131 views
0

我需要你的帮助,将一个批处理脚本放在一起,以监视逻辑驱动器和电子邮件上的磁盘空间,如果任何驱动器超过阈值设置。批处理脚本来检查磁盘空间

我无法迭代和执行每个驱动器的计算。我如何使用for循环和wmic来做到这一点,或者有没有其他方式来做到这一点?

+0

您正在使用哪个平台? Powershell + wmi可以在Windows上执行此操作。 – Chriseyre2000 2012-02-11 18:26:07

+0

我确信这可以批量完成,但我相信使用perfmon.exe会更合适。我从来没有用过它,但我认为这是它设计要做的事。也许这对于超级用户(www.superuser.com)站点来说是个好问题。 – dbenham 2012-02-11 20:43:32

回答

1

这可能会帮助你的方式,但你必须解析字符串......这对命令行来说有点复杂。

C:\>dir | find "bytes free" 
      9 Dir(s) 21,954,252,800 bytes free 
0

你和wmic结婚了吗?如果没有,你可以看看https://stackoverflow.com/a/2372171/1033808 ...它使用Python。要遍历每个驱动器,像这样:

drive_list = ["c:","d:","e:"] 
for drive in drive_list: 
    free_space = get_free_space(drive) 
    if free_space > threshold: 
    send_mail("Drive %s crossed the threshold" % drive) 

应该做的伎俩。 send_mail函数将邮件正文作为输入参数,请参阅this python documentation发送电子邮件。