powerwind 发表于 2006-5-16 11:50

[Windows Script 编程之二]获取磁盘信息

以下脚本实现显示Windows所有磁盘的相关信息。

//显示信息
function showInfo(msg)
{
        var timeout=10;//10秒后自动关闭对话框
        var title="磁盘信息";
        var msgbox=WScript.CreateObject("Wscript.Shell");
        msgbox.Popup (msg,timeout,title);
}
//获取指定磁盘信息
function diskInfo(driveName)
{
        var fso, d, s ="",t;
        fso = new ActiveXObject("Scripting.FileSystemObject");
        d = fso.GetDrive(fso.GetDriveName(driveName));
        switch(d.DriveType)
        {
                case 0:t="未知类型";break;
                case 1:t="移动磁盘";break;
                case 2:t="本地磁盘";break;
                case 3:t="网络磁盘";break;
                case 4:t="光驱";        break;
                case 5:t="RAM disk";break;
        }
        if(d.isReady)
        {
                s += t+" "+driveName+"\n";
                s += "容量: " + (d.TotalSize / 1024/1024) + " MB\n";
                s += "卷标: "+d.VolumeName+"\n";
                s += "可用空间: " + (d.FreeSpace / 1024/1024) + " MB\n";
                s += "磁盘标识: " + (d.SerialNumber) + "\n";
               
                return s+"\n";
        }else
                return t+" "+driveName+"\n";
}
//取得所有磁盘
function allDisk()
{
        var fso = new ActiveXObject("Scripting.FileSystemObject");
        var ds=new Enumerator(fso.Drives);
        var msg="";
        for(;!ds.atEnd();ds.moveNext())
        {
                msg+=diskInfo(ds.item().DriveLetter+":");
        }
        showInfo(msg);
}
allDisk();


再给个小程序可以自动打开光驱的门。

function eject()
{
        var WMP = WScript.CreateObject("WMPlayer.OCX.7" );
        var CDROMs = WMP.cdromCollection;
        CDROMs.item(0).Eject();
}
eject();

hjack 发表于 2006-5-16 12:29

在linux下一个命令就可以了

df -h
页: [1]
查看完整版本: [Windows Script 编程之二]获取磁盘信息