1 |
#!/bin/sh |
#! /usr/bin/env bash |
2 |
|
|
3 |
# $Header$ |
# $Header$ |
4 |
# $Name$ |
# $Name$ |
5 |
|
|
6 |
add=0 ; mut=0 ; |
add=0 ; mut=0 ; |
7 |
if [ $# -ge 3 ] |
if [ $# -ge 3 ] |
8 |
then |
then |
9 |
if test $1 = '-a' ; then add=1; shift; fi |
if test $1 = '-a' ; then add=1; shift; fi |
10 |
if test $1 = '-s' ; then mut=1; shift; fi |
if test $1 = '-s' ; then mut=1; shift; fi |
36 |
else |
else |
37 |
shift; shift; shift; listV=$* |
shift; shift; shift; listV=$* |
38 |
fi |
fi |
39 |
if test $mut = 0 ; then |
if test $mut = 0 ; then |
40 |
grep '^# Fields ' $inpFil |
grep '^# Fields ' $inpFil |
41 |
echo 'selected var:' $listV |
echo 'selected var:' $listV |
42 |
#echo 'sufx, tmpFil:' $sufx $tmpFil |
#echo 'sufx, tmpFil:' $sufx $tmpFil |
47 |
do |
do |
48 |
case $vv in |
case $vv in |
49 |
'Eta') var='ETAN' ; vfl=$vv ;; |
'Eta') var='ETAN' ; vfl=$vv ;; |
50 |
'ETAN' ) var=$vv ; vfl='Eta' ;; |
'ETAN' ) var=$vv ; vfl='Eta';; |
|
'Et2') var='ETANSQ' ; vfl=$vv ;; |
|
|
'ETANSQ' ) var=$vv ; vfl='Et2' ;; |
|
51 |
'T') var='THETA' ; vfl=$vv ;; |
'T') var='THETA' ; vfl=$vv ;; |
52 |
'THETA' ) var=$vv ; vfl='T' ;; |
'THETA' ) var=$vv ; vfl='T' ;; |
53 |
'S') var='SALT' ; vfl=$vv ;; |
'S') var='SALT' ; vfl=$vv ;; |
59 |
'W') var='WVEL' ; vfl=$vv ;; |
'W') var='WVEL' ; vfl=$vv ;; |
60 |
'WVEL' ) var=$vv ; vfl='W' ;; |
'WVEL' ) var=$vv ; vfl='W' ;; |
61 |
'Phi') var='PHIHYD' ; vfl=$vv ;; |
'Phi') var='PHIHYD' ; vfl=$vv ;; |
62 |
'PHIHYD' ) var=$vv ; vfl='Phi' ;; |
'PHIHYD' ) var=$vv ; vfl='Phi';; |
63 |
|
'Et2') var='ETANSQ' ; vfl=$vv ;; |
64 |
|
'ETANSQ' ) var=$vv ; vfl='Et2';; |
65 |
|
'T2') var='THETASQ' ; vfl=$vv ;; |
66 |
|
'THETASQ' ) var=$vv ; vfl='T2' ;; |
67 |
|
'S2') var='SALTSQ' ; vfl=$vv ;; |
68 |
|
'SALTSQ' ) var=$vv ; vfl='S2' ;; |
69 |
'U2') var='UVELSQ' ; vfl=$vv ;; |
'U2') var='UVELSQ' ; vfl=$vv ;; |
70 |
'UVELSQ' ) var=$vv ; vfl='U2' ;; |
'UVELSQ' ) var=$vv ; vfl='U2' ;; |
71 |
'V2') var='VVELSQ' ; vfl=$vv ;; |
'V2') var='VVELSQ' ; vfl=$vv ;; |
72 |
'VVELSQ' ) var=$vv ; vfl='V2' ;; |
'VVELSQ' ) var=$vv ; vfl='V2' ;; |
73 |
|
'W2') var='WVELSQ' ; vfl=$vv ;; |
74 |
|
'WVELSQ' ) var=$vv ; vfl='W2' ;; |
75 |
*) var=$vv ; vfl=$vv ;; |
*) var=$vv ; vfl=$vv ;; |
76 |
esac |
esac |
77 |
#echo 'grep -m 1' "^ field : ${var} " $inpFil |
#echo 'grep -m 1' "^ field : ${var} " $inpFil |
87 |
then flag=0 |
then flag=0 |
88 |
outFil=${prfx}'_head'.$sufx |
outFil=${prfx}'_head'.$sufx |
89 |
nLin=`sed -n "/^# end of header/=" $inpFil` |
nLin=`sed -n "/^# end of header/=" $inpFil` |
90 |
head -$nLin $inpFil > $tmpFil |
head -$nLin $inpFil > $tmpFil |
91 |
if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi |
if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi |
92 |
if test -f $outFil |
if test -f $outFil |
93 |
then |
then |
121 |
echo "/^ field : $var /{" > $sedFil |
echo "/^ field : $var /{" > $sedFil |
122 |
if test $nLev = 1 ; then k=0 ; else k=-1 ; fi |
if test $nLev = 1 ; then k=0 ; else k=-1 ; fi |
123 |
while [ $k -le $nLev ] |
while [ $k -le $nLev ] |
124 |
do |
do |
125 |
echo "N" >> $sedFil |
echo "N" >> $sedFil |
126 |
k=`expr $k + 1` |
k=`expr $k + 1` |
127 |
done |
done |
132 |
if test $mut = 0 ; then head -1 $tmpFil ; fi |
if test $mut = 0 ; then head -1 $tmpFil ; fi |
133 |
if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi |
if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi |
134 |
touch $outFil |
touch $outFil |
135 |
sed '/^ k /d' $tmpFil | sed '/^ field /d' >> $outFil |
sed '/^ k /d' $tmpFil | sed '/^ field /d' >> $outFil |
136 |
rm -f $sedFil $tmpFil |
rm -f $sedFil $tmpFil |
137 |
fi |
fi |
138 |
done |
done |