in reply to Why does the array not reset each time I call the function?

I do not understand why the variable @data_file keeps the data from the previous call.

I find that hard to believe. But since you didn't provide code I can run (or rather the data needed to run it), there's not much I can do about it.

  • Comment on Re: Why does the array not reset each time I call the function?

Replies are listed 'Best First'.
Re^2: Why does the array not reset each time I call the function?
by tuxy94 (Initiate) on Apr 02, 2008 at 09:55 UTC
    The data needed to run this are a shadow file, a passwd file and a group file from a Linux system. This script is supposed to parse the files, retrieve some specific groups, users from those groups and of course the password and then regenerate the new file in order to have them used in another linux server.

      Having just implemented something that does exactly what you describe, I have one recommendation: use Text::CSV_XS. Treat the passwd, group, and shadow files as CSVs separated by ':'. Build data structures, compare then, then use the same module to output the new files.

      You will save yourself a lot of hassle.

      Also, don't use DATA as the name of a file handle, it's special. Also, always use strict and warnings. You'll save yourself loads of debugging time.

      <radiant.matrix>
      Ramblings and references
      The Code that can be seen is not the true Code
      I haven't found a problem yet that can't be solved by a well-placed trebuchet