/[MITgcm]/MITgcm_contrib/jmc_script/extract_MON
ViewVC logotype

Annotation of /MITgcm_contrib/jmc_script/extract_MON

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Mon Nov 9 17:36:04 2020 UTC (4 years, 8 months ago) by jmc
Branch: MAIN
Add shell & matlab scripts to process MONITOR output from STDOUT files
 and make simple time-serie plots

1 jmc 1.1 #! /usr/bin/env bash
2    
3     # $Header: $
4     # $Name: $
5    
6     tmpfil=TTT.$$
7     if [ $# -le 1 ]
8     then
9     echo 'Usage: '`basename $0`' file_input file_output [n]'
10     echo ' ==> extract lines with "MON" out off file_input to file_output'
11     echo ' start at the 1rst [or n^th] "%MON time_tsnumber"'
12     echo ' or (n<0) after the (-n)^th line that match the last record'
13     exit
14     else
15     if test $# = 2 ; then n1=1 ; else n1=$3 ; fi
16     file=$1 ; output=$2 ;
17     echo ' ==> extract lines with "MON" out off file='$file ' to '$output
18     fi
19     #----------------------------------------------------------
20     touch $output $tmpfil
21     sed -n '/%MON/p' $1 | sed 's/(PID\.TID 000.\.000.) //g' >> $tmpfil
22     #egrep '%MON|cg2d_init_res' $1 | sed 's/(PID\.TID 000.\.000.) //g' >> $tmpfil
23    
24     if test $n1 = 0
25     then
26     echo ' take all lines'
27     cat $tmpfil >> $output
28     rm -f $tmpfil
29     exit
30     fi
31    
32     if [ $n1 -lt 0 ]
33     then
34     #- used to add the 1rst "Shap global diagnostic" (if test $n1 = -1):
35     # select lines starting just after the -$n1 ^th line that match the last record
36     n0=`expr 0 - $n1`
37     line=`tail -1 $tmpfil | sed 's/= .....................//g'`
38     num0=`sed -n "/$line/=" $tmpfil | sed -n "$n0 p"`
39     num1=`expr $num0 + 1`
40     else
41     # select lines starting at the $n1 ^th "time_tsnumber" record
42     num1=`sed -n '/%MON time_tsnumber/=' $tmpfil | sed -n "$n1 p"`
43     fi
44     echo ' start at line' $num1 ' :'
45     sed -n "$num1 p" $tmpfil
46    
47     sed -n "$num1,$ p" $tmpfil >> $output
48     rm -f $tmpfil
49     exit

  ViewVC Help
Powered by ViewVC 1.1.22