javascript - NodeJS 确定驱动器是否可移动

标签 javascript node.js

有没有办法通过 fs.stat() 或其他方式使用 Node JS 来确定给定目录和/或驱动器是否可移动(如 USB 驱动器)?

我正在寻找一种跨平台方法(或者至少,一种适用于 Windows 的方法,一种适用于 Mac 的方法,并且我可以创建自己的跨平台功能)。

最佳答案

我们有一个名为 drivelist 的小型跨平台模块(适用于 OS X、Windows 和 GNU/Linux)列出计算机中连接的驱动器。生成的驱动器包含一个 system 属性,用于确定驱动器是否可移动,例如,在 Windows 上:

[
    {
        device: '\\\\.\\PHYSICALDRIVE0',
        description: 'WDC WD10JPVX-75JC3T0',
        size: '1000 GB'
        mountpoint: 'C:',
        system: true
    },
    {
        device: '\\\\.\\PHYSICALDRIVE1',
        description: 'Generic STORAGE DEVICE USB Device',
        size: '15 GB'
        mountpoint: 'D:',
        system: false
    }
]

您可以按您感兴趣的列表过滤列表,并检查 system 属性:

var drivelist = require('drivelist');

drivelist.list(function(error, disks) {
  if (error) throw error;

  var drive = drives.find(function(drive) {
    return drive.mountpoint === 'C:';
  });

  if (drive.system) {
    console.log('C: is not removable!');
  }
});

我们使用各种机制来确定驱动器是否可移动,请随时仔细查看您最感兴趣的平台!

关于javascript - NodeJS 确定驱动器是否可移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22810785/

相关文章:

Javascript 将数据保存到文件系统(带用户提示)

javascript - Stellar.js 可以在调整窗口大小时重新调整元素偏移量吗?

javascript - 如何使用 jQuery 对象作为选择框

javascript - Nodejs - Req.body 在 express 4.9.0 后未定义

bash - 从 NodeJS 捕获 bash 输出

node.js - 使用 express/connect 和 session 存储时如何找到 session ID?

javascript - 转换后触发 css 悬停状态更改

javascript - 尝试在 Javascript 中根据用户输入嵌套动态生成的 JSON

javascript - 升级后我的 npm 完全坏了 - 'Cannot read property ' get'of undefined'

node.js - 如何将 Node.js 的 TypeScript 代码编译为一个文件?