#!/usr/bin/perl # # A program that accepts input from the cmputil command and will diff the files # in question, prompting the user for a decision, and build an action file # use File::Basename; $| = 1; open IN, "<$ARGV[0]"; open OUT, ">differences"; while () { chop $_; ($file,$problem,@machines) = split(/,/, $_); ($name,$path,$suffix) = fileparse($file,""); print "$name -- $path -- $suffix\n"; if($problem eq "different") { # get the file from the remote machine foreach $machine (@machines) { next if ($machine eq ""); $tempfile = "/tmp/" . $name . "_" . $machine; `rcp $machine:$file $tempfile`; print "comparing $name from $machine\n"; system "diff $file $tempfile"; print "(k)eep or (i)gnore this difference?\n"; $resp = <>; print ">>$resp<<\n"; if($resp eq "k") { print OUT "$machine $file\n"; } } } }