NODE 32 0.00000 0.00000 -1.90000 NODE 33 0.00000 0.00000 -5.50000 NODE 34 0.00000 0.00000 -9.00000 NODE 35 0.00000 0.00000 -15.00000 NODE 36 0.00000 0.00000 -18.90000 NODE 37 0.00000 0.00000 -22.40000 NODE 38 0.00000 0.00000 -25.90000 NODE 39 0.00000 0.00000 -29.00000 NODE 40 0.00000 0.00000 -32.50000 NODE 41 0.00000 0.00000 -33.90000 NODE 42 0.00000 0.00000 -62.90000 BEAM 26 27 26 1 14 1 BEAM 27 28 27 1 13 1 BEAM 28 29 28 1 12 1 BEAM 29 30 29 1 11 1 #### 'Node ID X Y Z BC NODE 1 4.51000 0.00000 79.00000 NODE 2 0.00000 0.00000 79.00000 NODE 3 0.00000 0.00000 78.27000 NODE 4 -1.88000 0.00000 78.27000 NODE 5 0.00000 0.00000 76.80000 NODE 6 0.00000 0.00000 74.46000 NODE 7 0.00000 0.00000 71.66000 NODE 8 0.00000 0.00000 68.86000 NODE 9 0.00000 0.00000 66.07000 'Elem ID np1 np2 material geom lcoor ecc1 BEAM 1 2 1 2 36 2 BEAM 2 3 2 2 36 1 BEAM 3 3 4 2 36 2 BEAM 4 5 3 2 36 1 BEAM 5 6 5 3 35 1 BEAM 6 7 6 3 34 1 PIPE 19 4.489 0.022 PIPE 20 4.488 0.021 PIPE 21 4.487 0.020 PIPE 22 4.395 0.018 PIPE 23 4.351 0.018 PIPE 24 4.261 0.017 #### use strict; use warnings; # use the Tie::File option use Tie::File; my @records; tie @records, 'Tie::File', "output.fem"; my $in_file = "fake_vals.fem"; my $outIndex = 11; # use three parameter open '<' - read mode open my $in, '<', "$in_file" or die "cannot open '$in_file' for reading: $!\n"; while (my $line = <$in>) { next if $line !~ /\bNODE\b/i; chomp $line; $records[$outIndex] = $line; ++$outIndex; }