Issue #7288 has been reported by joerg.herzinger (Jörg Herzinger). ---------------------------------------- Feature #7288: Documentation missing: FileUtils.chmod "+X", "directory" https://bugs.ruby-lang.org/issues/7288 Author: joerg.herzinger (Jörg Herzinger) Status: Open Priority: Normal Assignee: aamine (Minero Aoki) Category: Target version: Documentation for chmods "X" (uppercase) feature is missing. This sets the execute bit on directories but not on files. Tested on my Ubuntu machine it works although not documented. Reproducable like this: [irb] require 'fileutils' FileUtils.cd "/tmp";FileUtils.touch "testfile";FileUtils.mkdir "testdir" FileUtils.chmod "-x", "testfile"; FileUtils.chmod "-x", "testdir" File.executable? "testdir" => false File.executable? "testfile" => false FileUtils.chmod "+X", "testfile"; FileUtils.chmod "+X", "testdir" File.executable? "testdir" => true File.executable? "testfile" => false [/irb] From chmods man page: ... execute (or search for directories) (x), execute/search only if the file is a directory or already has execute permission for some user (X) ...
on 2012-11-06 09:36
on 2012-11-06 16:00
Issue #7288 has been updated by zzak (Zachary Scott).
Category set to DOC
Target version set to 2.0.0
I was looking through lib/fileutils.rb
It seems it's using the private method symbolic_modes_to_i which takes
the mode passed from FileUtils.chmod and translates it into an octal
number, or absolute mode, for use with File.chmod. This then takes us to
FileUtils.mode_mask which does the heavy lifting, and seems to include a
special case for "X", which it translates into "0111".
chmod(1): The execute/search bits if the file is a directory or
any
of the execute/search bits are set in the original (unmodi-
fied) mode. Operations with the perm symbol ``X'' are only
meaningful in conjunction with the op symbol ``+'', and are
ignored in all other cases.
Call me crazy, but it seems you're right and we need to add this "X"
mode to our documentation.
I will try to come up with a patch for this soon.
----------------------------------------
Feature #7288: Documentation missing: FileUtils.chmod "+X", "directory"
https://bugs.ruby-lang.org/issues/7288#change-32501
Author: joerg.herzinger (Jörg Herzinger)
Status: Open
Priority: Normal
Assignee: aamine (Minero Aoki)
Category: DOC
Target version: 2.0.0
Documentation for chmods "X" (uppercase) feature is missing. This sets
the execute bit on directories but not on files. Tested on my Ubuntu
machine it works although not documented.
Reproducable like this:
[irb]
require 'fileutils'
FileUtils.cd "/tmp";FileUtils.touch "testfile";FileUtils.mkdir "testdir"
FileUtils.chmod "-x", "testfile"; FileUtils.chmod "-x", "testdir"
File.executable? "testdir" => false
File.executable? "testfile" => false
FileUtils.chmod "+X", "testfile"; FileUtils.chmod "+X", "testdir"
File.executable? "testdir" => true
File.executable? "testfile" => false
[/irb]
From chmods man page:
... execute (or search for directories) (x), execute/search only if
the file is a directory or already has execute permission for some user
(X) ...
Please log in before posting. Registration is free and takes only a minute.
Existing account
(Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
Log in with Google account | Log in with Yahoo account
No account? Register here.