#!/bin/sh # Fritz Sieker #set -x # reorder the TSP output to lexical order testName=$1 maxPoints=$2 testFile=$3 cookedFile=$4 tailFile=junk0 file=junk sed -n '0,/Shortest/ p' $testFile > $cookedFile sed -n '/Shortest/,$ p' $testFile > $tailFile sed -n '2,3 p' $tailFile >> $cookedFile sed -n '4,$ p' $tailFile | sed '/^ *$/d' > $file colNum=1 colValues=junk1 doubleFile=junk2 dirFile=junk3 awkLine="{print \$$colNum}" awk "$awkLine" $file | sort > $colValues firstVal=`head -n1 $colValues` flag="/$firstVal /" cat $file $file | sed -n "$flag,$flag {${flag}b; p}" > $doubleFile secondVal=`head -n1 $doubleFile | awk "$awkLine"` lastVal=`tail -n1 $doubleFile | awk "$awkLine"` echo $secondVal > $dirFile echo $lastVal >> $dirFile nextVal=`sort $dirFile | head -n1 | awk "$awkLine"` fgrep "$firstVal " $file >> $cookedFile if [ "$secondVal" == "$nextVal" ] then cat $doubleFile >> $cookedFile else tac $doubleFile >> $cookedFile fi rm -f $colValues $doubleFile $dirFile