public Method

FileUtils.chown_R(user, group, list, options = {})

Options: noop verbose force

Changes owner and group on the named files (in list) to the user user and the group group recursively. user and group may be an ID (Integer/String) or a name (String). If user or group is nil, this method does not change the attribute.

FileUtils.chown_R 'www', 'www', '/var/www/htdocs'
FileUtils.chown_R 'cvs', 'cvs', '/var/cvs', :verbose => true

Source Code

# File fileutils.rb, line 947
def chown_R(user, group, list, options = {})
  fu_check_options options, OPT_TABLE['chown_R']
  list = fu_list(list)
  fu_output_message sprintf('chown -R%s %s%s',
                            (options[:force] ? 'f' : ''),
                            [user,group].compact.join(':') + ' ',
                            list.join(' ')) if options[:verbose]
  return if options[:noop]
  uid = fu_get_uid(user)
  gid = fu_get_gid(group)
  return unless uid or gid
  list.each do |root|
    Entry_.new(root).traverse do |ent|
      begin
        ent.chown uid, gid
      rescue
        raise unless options[:force]
      end
    end
  end
end
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.