#!/bin/bash # get values matching measure for a compressed input file # and print sorted list of values # for each solver listed in input after 2-th argument MEASURE="$1" GZFILENAME="$2" shift shift SOLVERS="$*" SOLVERIND=0; for SOLVER in $SOLVERS; do let "SOLVERIND=SOLVERIND+1" GZFILE="../${SOLVER}/${GZFILENAME}" gzip -dc "${GZFILE}" | awk -v measure="${MEASURE}" -F, '/Mean/ && $3==measure { e=$1; gsub(/Experiment /,"",e); printf("%d %s %s %s %s\n",e,$3,$4,$6,$8) }' | sort -g -k 4,4 -k1,1 | awk -v ind=${SOLVERIND} -v solver="${SOLVER}" 'BEGIN{printf"%s %s", ind, solver}{printf" %s %s %s", $1, $4, $5}END{printf"\n"}' # Experiment number,Name,Start Time,Mean,Confidence Interval # index (from 1),SOLVER,Experiment number,Mean,Confidence Interval, ...,Experiment number,Mean,Confidence Interval done