Проблема с файлом / FileUtils.chmod Ruby - PullRequest
4 голосов
/ 14 февраля 2010

У меня довольно странная проблема с Ruby и File.chmod (такая же проблема существует с FileUtils.chmod.

Вот что я делаю для теста:

File.chmod(1777, "testfile")

Но как только я это сделаю, я получу это как набор разрешений:

--wxrwS--t

Эта проблема существует только при использовании * nix 4-значных наборов разрешений. Я гуглил это, но не получил ничего ценного. Когда набор разрешений равен 0777, он назначается правильно, но все, что больше 0 для первой цифры, может испортить разрешения довольно плохо.

У кого-нибудь есть советы?

Я знаю, что могу сделать системный вызов, чтобы сделать то, что я хочу, но я уверен, что я упускаю что-то простое.

1 Ответ

12 голосов
/ 14 февраля 2010

01777 будет работать. В ruby ​​ведущий ноль в целочисленном литерале указывает, что он записан в восьмеричной записи, а права доступа к файлу обычно записываются в виде восьмеричных чисел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...