如何在Ruby中写入Windows文件属性?

时间:2018-07-30 17:26:38

标签: ruby io

我想在Windows上创建属性并将值存储在文件的属性内。您可以在编写时查看此类属性,然后单击文件属性>细节。我将如何在这里使用Ruby创建新的att /值?[![在此处输入图片描述] [1]] [1

1 个答案:

答案 0 :(得分:2)

这些属性特定于Windows平台,我可以肯定地说,Ruby内置没有机制来更改它们。

这意味着您要么必须搜索为您做的gem,要么更简单的方法是简单地调用平台命令来更改它们。 attrib命令用于更改这些内容,可以使用system进行调用。

基本语法如下:

attrib [+ attribute | - attribute] [pathname]

不能仅添加所需的任何属性,有特定的标志,并且每个标志都有意义。

  • R =只读
  • H =隐藏
  • S =系统
  • D =目录
  • A =存档
  • C =压缩
  • E =已加密
  • N =未编入索引
  • L =重新解析点
  • O =离线
  • P =稀疏文件
  • =未索引内容
  • T =临时

因此,如果您想添加“隐藏”属性,并删除“只读”属性...

system 'attrib +H -R myfile.txt'

这可能不是标志的完整列表,但绝对是最常见的标志。遗憾的是,您不能仅添加任意字符串,更改它们会影响Windows处理文件的方式。