1 RO
2 SC
3 TR
4 UT
5 MA
6 TU
7 RB
8 AC
9 ZE
10 DH
11 LM
12 AT
13 NN
14 DR
15 GN
16 PN
17 AH
18 RM
19 AR
20 HD
21 VO
22 BO
23 AM
24 SK
25 TA
26 ZM
27 MM
28 RK
29 RM
30 EM
31 SN
####
SVO AIN 0 -54.68
SVO AIN 0 -54.64
SVO AIN 0 -54.61
SVO AIN 0 -54.63
SVO AIN 0 -54.59
SVO AIN 0 -54.64
SVO AIN 0 -54.69
SVO AIN 0 -54.59
SVO AIN 0 -54.69
SVO AIN 0 -54.58
SVO AIN 0 -54.70
SVO AIN 0 -54.65
SVO AIN 0 -54.61
SVO AIN 0 -54.66
SVO AIN 0 -54.56
SVO AIN 0 -54.65
SVO AIN 0 -54.65
SVO AIN 0 -54.65
SVO AIN 0 -54.62
SVO AIN 0 -54.68
SVO AIN 0 -54.67
SVO AIN 0 -54.69
SVO AIN 0 -54.61
SVO AIN 0 -54.57
SVO AIN 0 -54.60
SVO AIN 0 -54.61
SVO AIN 0 -54.65
SVO AIN 0 -54.62
SVO AIN 0 -54.61
SVO AIN 0 -54.62
SVO AIN 0 -54.71
SVO AIN 0 -54.58
SVO AIN 0 -54.57
####
SLD AIN 1 838.75
SLD AIN 1 725.77
SLD AIN 1 89.65
SLD AIN 1 523.51
SLD AIN 1 808.10
SLD AIN 1 223.53
SLD AIN 1 19.73
SLD AIN 1 2.26
SLD AIN 1 210.97
SLD AIN 1 310.07
SLD AIN 1 382.20
SLD AIN 1 146.53
SLD AIN 1 157.95
SLD AIN 1 70.09
SLD AIN 1 487.62
SLD AIN 1 164.14
SLD AIN 1 566.46
SLD AIN 1 159.33
SLD AIN 1 247.01
SLD AIN 1 257.50
SLD AIN 1 191.63
SLD AIN 1 181.16
SLD AIN 1 517.60
SLD AIN 1 358.92
SLD AIN 1 146.42
SLD AIN 1 213.83
SLD AIN 1 104.63
SLD AIN 1 158.29
SLD AIN 1 186.81
SLD AIN 1 775.32
SLD AIN 1 419.85
SLD AIN 1 328.96
SLD AIN 1 107.01
####
#!/usr/local/bin/perl
# File: merge.pl
#===========================================================================
## Main block
{
&merge( $ARGV[0], $ARGV[1], $ARGV[2] );
exit(0);
} # end main block...
#===========================================================================
#
#===========================================================================
sub parseFile_wNames {
my($fileSpec) = shift;
$i = 0;
open(TXT, "$fileSpec") || error("Can't open file $fileSpec");
while ($line =) {
chomp($line);
$Names_Arr[++$i] = $line;
} # while
close(TXT);
return($i);
} # parseFile_wNames
#===========================================================================
#
# parses a file with data on format:
# SVO AIN 0 -54.67
# SLD AIN 1 680.09
#===========================================================================
sub parseFile_sysl {
my($fileSpec) = shift;
$i = 0;
open(TXT, "$fileSpec") || error("Can't open file $fileSpec");
while ($line =) {
chomp($line);
@fields = split(' ' ,$line);
# fields[0] = name
# fields[1] = 'AIN'
# fields[2] = '1' (number)'
# fields[3] = <----- THAT'S THE ONE
$Val_Arr[++$i] = $fields[3];
} # while
close(TXT);
return($i);
} # parseFile_sysl
#===========================================================================
sub parseFile_sysv {
my($fileSpec) = shift;
$i = 0;
open(TXT, "$fileSpec") || error("Can't open file $fileSpec");
while ($line =) {
chomp($line);
@fields = split(' ' ,$line);
# fields[0] = name
# fields[1] = 'AIN'
# fields[2] = '1' (number)'
# fields[3] = <----- THAT'S THE ONE
$Val_Arr[++$i] = $fields[3];
} # while
close(TXT);
return($i);
} # parseFile_sysv
#
#===========================================================================
sub merge {
my ($f1, $f2, $f3) = @_;
# my ($man, $sec ) = @_;
$lines1 = parseFile_wNames( $f1 );
$lines2 = parseFile_sysl( $f2 );
$lines3 = parseFile_sysv( $f3 );
for $i (1 .. $lines1) {
print "$Names_Arr[$i] \t\t $Val_Arr[$i] \t $Val_Arr[$i]\n";
}
if ($lines1, $lines2 ne $line3) {
print "Warning: Different number of lines in the three files
$f1 has $lines1 lines
$f2 has $lines2 lines
$f3 has $lines3 lines\n";
}
} # merge
#======================================================
# End Of File
#======================================================