Forum: Ruby on Rails RE: File Auditing with rails - File I/O issue

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
9fc9f31415f9384fbe7262fa916e16f5?d=identicon&s=25 Brian Corrigan (Guest)
on 2006-03-17 15:18
(Received via mailing list)
You know.. I realized that after I wrote the email.  My mistake.. But,
same results??



My output is

""

Nil



Any other ideas?



Brian Corrigan
Operations Manager

MGAM Systems, Inc.
1 Broadway Place
Schenectady, NY 12305
<http://maps.yahoo.com/py/maps.py?Pyt=Tmap&addr=1+B...
enectady%2C+NY+12305&country=us>

brian.corrigan@mm-games.com <mailto:brian.corrigan@mm-games.com>

tel:
fax:
mobile:

518-881-1121
518-881-1128
518-727-6652



________________________________

From: rails-bounces@lists.rubyonrails.org
[mailto:rails-bounces@lists.rubyonrails.org] On Behalf Of Chris Hall
Sent: Thursday, March 16, 2006 6:28 PM
To: rails@lists.rubyonrails.org
Subject: Re: [Rails] File Auditing with rails - File I/O issue



I think you might want to try

outfile = "out.gz"
...
Zlib::GzipWriter.open(outfile) do |gz|
  gz.write(File.read(tempfile))
end

also, gzip != zip hence why winzip can't do anything with the resulting
gzipped file.  I wouldn't know if winzip supports gzip compression or
not.  the extension for a gzipped file is typically .gz.

Chris

On 3/16/06, Brian Corrigan <brian.corrigan@mm-games.com> wrote:

Hey Folks,
I've written a script to generate a list of all files on a machine,
then zip the results. I'm going to stick a web front end on it, and use
it to audit some file servers. The problem is that the ZIP
compression/decompression isn't working,
but its not what you might think. The script completes, but seems to
not actually write anything.

Here is a short version that only looks at the C:/temp drive. You can
change this at the top.

---Start Code Here--
require 'find'
require 'csv'
require 'zlib'
tempfile = "temp.csv"
outfile = "out.zip"
dirname = "c:/temp"
# Prepare comma-delimited file for writing
CSV::Writer.generate (File.open(tempfile,"w+"), ',') do |csv|
  Find.find(dirname) do |f|
  csv << [File.dirname(f), File.basename(f), File.mtime(f).to_s]
  end
end
# TEST: View the tempfile to make sure it has data.
# This prints nothing, but the file DOES have info after
# the script completes. Maybe the file isn't written at this point?
p IO.read(tempfile)
Zlib::GzipWriter.open(outfile) do |gz|
gz << File.open (tempfile).read
end
Zlib::GzipReader.open(outfile) {|gz|
print gz.read
}
# The ZIP file can't be extracted with WINZIP. No idea why, but since
# I'll be using another RUBY script for extraction, im not sure that I
care.


---------------------------
Brian Corrigan
---------------------------
This topic is locked and can not be replied to.