-gt: operador unário esperado

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

Estou recebendo o seguinte erro ao executar este script:

-gt: operador unário esperado

Eu li que colocar as variáveis ​​entre aspas duplas geralmente funciona, mas como funcionaria com uma variável contida entre colchetes?

informação relacionada