#!/bin/bash #set -x #populate parm/models files from with real time version numbers from ecflow definition file PARMrunhistory_models=${PARMrunhistory_models:-$DATA/parm/models} cp -R ${PARMrunhistory_fixed}/* ${PARMrunhistory} #makes a list with 4 digit version numbers from ecflow dump #ecflow_client --get --host=cecflow02 --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile #determine active prod ecflow server if (ecflow_client --get /prod/primary --host=cecflow01 --port=31415) < /dev/null > /dev/null 2>&1; then ecflow_client --get --host=cecflow01 --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile elif (ecflow_client --get /prod/primary --host=cecflow02 --port=31415) < /dev/null > /dev/null 2>&1; then ecflow_client --get --host=cecflow02 --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile elif (ecflow_client --get /prod/primary --host=decflow01 --port=31415) < /dev/null > /dev/null 2>&1; then ecflow_client --get --host=decflow01 --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile elif (ecflow_client --get /prod/primary --host=decflow02 --port=31415) < /dev/null > /dev/null 2>&1; then ecflow_client --get --host=decflow02 --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile fi #old ##ecflow_client --get --host=$active_server --port=31415 | grep "_ver 'v" | grep -v " " > $DATA/finalfile cat $DATA/finalfile | grep "_ver 'v" | awk '{print $2}' > $DATA/variable cat $DATA/finalfile | grep "_ver 'v" | awk '{print ","$3}' | sed "s/[']//g" | sed 's|\(.*\)\..*|\1|' > $DATA/version paste -d '' $DATA/variable $DATA/version > $DATA/model_versions.txt while IFS=',' read -r model_ver ver do #substitutes 4 digit version number into static parm/model files with $model_ver placeholder [ -d "$PARMrunhistory_models" ] && cd $PARMrunhistory_models && files=$(grep -rl $model_ver $PARMrunhistory_models) && echo $files | xargs sed -i "s|$model_ver|$ver|g" done < $DATA/model_versions.txt