Um pouco confuso, mas funciona:
#!/bin/bash
now='date +%s'
max_age=10800 # 3 hours in seconds
if [ $(($now - 'stat -c '%Y' $1')) -gt $max_age ]; then
echo "file hasn't been updated in $max_age seconds"
fi
Chame o script com o nome do arquivo como o único argumento.