-gt: operador unario esperado

-gt: operador unario esperado
if [ $(stat -c %s $OTDEFERS) -gt 128 ] ; then
   echo
   echo WARNING: Records have been written to the defers file
   STEP_WARNING=1
fi

Recibo el siguiente error al ejecutar este script:

-gt: operador unario esperado

Leí que poner las variables entre comillas dobles generalmente funciona, pero ¿cómo funcionaría con una variable contenida entre corchetes?

información relacionada