【问题标题】:Is there any way to set file attributes in node js有没有办法在节点js中设置文件属性
【发布时间】:2017-03-13 15:52:27
【问题描述】:

不确定 unix,但在 Windows 中,您可以为文件添加属性,例如照片文件的位置或视频文件的持续时间。

有没有办法在节点 js 中做到这一点。我目前的项目会非常方便。这样我就不必创建单独的属性数据文件了。

【问题讨论】:

  • 您混淆了文件属性,这些属性是文件系统结构的一部分,元数据可能存在或可能存在于文件格式或某些类型的文件中。

标签: node.js file-attributes


【解决方案1】:

您可以使用WinAttr 包来执行此操作。

【讨论】:

  • 我想这会起作用,但似乎只有 Windows。可以肯定的是,现在很多云系统都在某种 unix 上。感谢您的建议。
【解决方案2】:

查看此模块:

但它适用于归档、隐藏、只读、系统等属性。

我认为您不能向视频文件添加持续时间属性 - 持续时间写入视频本身的容器/编解码器中。图像的位置在 EXIF 数据中 - 可以使用 npm 上的其他模块进行操作 - 请参阅:

对于照片文件的位置或视频文件的持续时间,您需要使用适合给定图像或视频格式的任何信息。

【讨论】:

  • 我想这会起作用,但似乎只有 Windows。可以肯定的是,现在很多云系统都在某种 unix 上。感谢通过的建议。地点和持续时间只是示例。
【解决方案3】:

您可以运行 SHELL 命令:

var execSync = require('child_process').execSync;

// Remove Hidden and system attributes:
execSync("attrib -h -s " + yourFolder);

// Add Hidden attribute:
execSync("attrib +h " + yourFolder);

【讨论】: