File/FileUtils.chmod Ruby的问题

Eug*_*ene 4 ruby

我遇到了Ruby和File.chmod的一个相当奇怪的问题(FileUtils.chmod存在同样的问题.

以下是我为测试用例所做的事情:

File.chmod(1777, "testfile")
Run Code Online (Sandbox Code Playgroud)

但是一旦我这样做了,我就把它作为一个权限集:

--wxrwS--t
Run Code Online (Sandbox Code Playgroud)

仅在使用*nix 4位数限制集时才存在此问题.我用谷歌搜索,但没有得到任何有价值的东西.当权限集为0777时,它会正确分配,但第一个数字的任何高于0的内容都会使权限变得非常糟糕.

有人有任何提示吗?

我知道我可以通过系统调用来做我想做的事情,但我确信这很简单,我很想念.

sep*_*p2k 12

01777会奏效.在ruby中,整数文字中的前导零指定它以八进制表示法编写,文件权限通常写为八进制数字.

  • 这就是我喜欢stackoverflow的原因.5分钟,我有我的答案.谢谢! (2认同)