[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Copying Windows system files

Stuart Clarke

4/8/2009 2:16:00 PM

Hi all,

Does anyone know how to copy Windows system files? I have a script which
looks for certain files and writes a log with the path of the file found
and copies the file found to a folder.

This works fine for all files I am interested in except the index.dat
file. My script finds the file and writes it to a log but doesn't
actually copy the file. Does any one know how I can copy an index.dat
file? The relevant code:

def copyFile(file)
myLog = File.new('\\Test\\SweeperLog.txt', 'a')
myLog.puts file
File.copy(file, '\\Test')
end

Many thanks
--
Posted via http://www.ruby-....

2 Answers

James Herdman

4/8/2009 2:37:00 PM

0

[Note: parts of this message were removed to make it a legal post.]

Hi Stuart.

Two thoughts:

1) Maybe you don't have access to the file?

2) Instead of opening the file, reading it, and then copying it else where,
why not look into using FileUtils.cp? It would be a little more direct. It
also may end up being the key if you do, in fact, have access to the file.

James

On Wed, Apr 8, 2009 at 10:15 AM, Stuart Clarke
<stuart.clarke1986@gmail.com>wrote:

> Hi all,
>
> Does anyone know how to copy Windows system files? I have a script which
> looks for certain files and writes a log with the path of the file found
> and copies the file found to a folder.
>
> This works fine for all files I am interested in except the index.dat
> file. My script finds the file and writes it to a log but doesn't
> actually copy the file. Does any one know how I can copy an index.dat
> file? The relevant code:
>
> def copyFile(file)
> myLog = File.new('\\Test\\SweeperLog.txt', 'a')
> myLog.puts file
> File.copy(file, '\\Test')
> end
>
> Many thanks
> --
> Posted via http://www.ruby-....
>
>

Stuart Clarke

4/8/2009 6:22:00 PM

0

I am thinking, its being caused me copying lots of files with the same
name (index.dat) and only the last copied file is present in my
destination folder, which is infact corrupt.

How would I assign a new name to a file if one already exists, for
example I am thinking

if File.exist(Index.dat)
File.copy(file[x], '\\Test')
else
File.copy(file, '\\Test')

Basically I am trying to say, if you find an index.dat file in the
destination folder copy the next index.dat file but give it a squential
number

index[1].dat
index[2].dat

Does that make sense?

thanks a lot



James Herdman wrote:
> Hi Stuart.
>
> Two thoughts:
>
> 1) Maybe you don't have access to the file?
>
> 2) Instead of opening the file, reading it, and then copying it else
> where,
> why not look into using FileUtils.cp? It would be a little more direct.
> It
> also may end up being the key if you do, in fact, have access to the
> file.
>
> James
>
> On Wed, Apr 8, 2009 at 10:15 AM, Stuart Clarke

--
Posted via http://www.ruby-....