如果你的某个程序需要在磁盘上大量存放文件,
那么,监测当前磁盘可用空间、当磁盘空间可用率低于某个值时,发出提示或告警,是个很实用很需要的功能。
如何实现这个功能呢?
且看代码:
var diskinfo = require('diskinfo');//当前盘符var current_disk = __dirname.substr(0,2).toLowerCase();//获得所有磁盘空间diskinfo.getDrives(function(err, aDrives) { //遍历所有磁盘信息 for (var i = 0; i < aDrives.length; i++) { //只获取当前磁盘信息 if( aDrives[i].mounted.toLowerCase() == current_disk ){ //盘符号 var mounted = 'mounted ' + aDrives[i].mounted; //总量 var total = 'total ' + (aDrives[i].blocks /1024 /1024 /1024).toFixed(0) + "gb"; //已使用 var used = 'used ' + (aDrives[i].used /1024 /1024 /1024).toFixed(0) + "gb"; //可用 var available = 'available ' + (aDrives[i].available /1024 /1024 /1024).toFixed(0) + "gb"; //使用率 var capacity = 'capacity ' + aDrives[i].capacity; console.log(mounted+""+total+""+used+""+available+""+capacity); } }});
代码解析:
使用三方模块diskinfo获取磁盘信息,遍历并匹配当前磁盘,然后输出磁盘信息。
执行效果:
可见,已获取磁盘总量、使用量、可用量、使用率等关键信息。
更多本系列教程:
Node.JS实战44:非常好用的数据库:SQLite
Node.JS实战43:Prune,给项目瘦个身
Node.JS实战42:又一高端操作:API HOOK
Node.JS实战41:让命令行变的五颜六色
Node.JS实战40:压缩和解压文件