#!/bin/bash src="${1?Missing source document}" path="${2?Missing spec src path}" domake() { pdflatex -draftmode "$src" >&2 } gendate() { echo -n "$( git log -n1 --pretty=format:%ai | cut -d' ' -f1 ) " } domake \ && echo -n 'id ' \ && head -n1 taskstats.dat \ && \ ( echo -n '0 ' && gendate && tail -n1 taskstats.dat \ && git log --no-merges --pretty=format:'%ar %h' -- "$path" \ | awk ' BEGIN { last="" } /days ago|^(1[5-9]|2[0-9]) hours ago/{ if ( $0 ~ /hours/ ) { $1 = 1 } if ( $1 == last ) next; if ( $1 < last ) nextfile; last = $1; print $1, $NF; } ' \ | while read n h; do git checkout "$h" >&2 \ && domake \ && echo -n "-$n " \ && gendate \ && tail -n1 taskstats.dat \ || exit 1 done )