I briefly looked at your post, but it contains far too much data and far too much code.
Please, reduce the data to two or three lines of data. Also, take out all the code that does not relate to the problem. For example, the reading of $dac02_location is useless because we don't know the content of the file. Is the subroutine CreateConfig relevant to the problem or not?
Also, please provide us with the output you expect and the output you get. It's completely unclear to me why the output you provide is not the output you expect, because all the lines in it are different. And is it really necessary to show us 60 lines of output? I think that three or four relevant lines would be far better.
From what the comments seem to say, I infer that you might be trying to find the users on one machine. But it seems to me that the extraction of user names does not work, because the output of your script does not contain usernames but complete passwd-style entries. My guess is that possibly your username extraction is wrong or your loop code to find whether a user already exists on the other machine or not. But it's hard to tell in this large pile of code.
I suggest you replace the loop for finding missing users with a hash lookup, as perlfaq4 says when searching for "duplicate".
|