in reply to Re: Generic compare script.
in thread Generic compare script.

Yes that is exactly what I want to do but I was trying not to spread my code around, I wanted a single script to do the lot.

Maybe that is not going to be possible???

I will check out the ports of the unix commands.

Many Thanks.

Replies are listed 'Best First'.
Re^3: Generic compare script.
by graff (Chancellor) on Oct 12, 2005 at 06:00 UTC
    I wanted a single script to do the lot

    With the unix tools installed on all machines, you could have a single script on a single machine that does something like this:

    my $find = "find /path -type f -print0 | xargs -0 md5" for my $host ( @hostlist ) { open O ">$host.md5list" or die "$host.md5list: $!"; print O `ssh $host '$find'`; close O; } # compare lists here, if you like, or use a separate script/tool to do + that
    That assumes that you have the appropriate authentication keys for using ssh without a password to connect to each host. Other methods are possible for the connections, of course.

    (updated the script to include "xargs -0", and to run the md5 part on the remote host, where it belongs -- note the single quotes around $find in the ssh command line.)

    (another update: I should confess that I have no clue how you would actually execute a shell script on a remote windows machine... good luck with that.)

      Thanks mate.......that looks like it will do the job. It's infinately simpler than my first idea! You have saved me loads of time...cheers!
      Thanks mate, this looks like it will do the job in an infinately simpler way than i was envisiging.
      I really need to brush up on my *nix.

      Cheers :o)