def chown(parameters)
params_desc = {
:files => { :mandatory => true, :type => :string_or_array },
:user => { :mandatory => false, :type => :string_or_integer },
:group => { :mandatory => false, :type => :string_or_integer },
:recursive => { :mandatory => false, :type => :boolean, :default => false }
}
check_parameters(parameters, params_desc)
files = parameters['files']
user = parameters['user']
group = parameters['group']
recursive = parameters['recursive']
files = Dir.glob(files)
if files.length > 0
puts "Changing owner of #{files.length} file(s) to '#{user}/#{group}'"
begin
if recursive
FileUtils.chown_R(user, group, files)
else
FileUtils.chown(user, group, files)
end
rescue
error "Error changing owner: #{$!}"
end
end
end