You are using indirection. If the variable ${BLOCK1FRAN}
points to an empty variable, you'll get the error message. Make sure that the variable pointed by ${BLOCK1FRAN}
contains a valid numeric value.
If you want an empty string and nonnumeric values to be evaluated as zero (0
), use the following syntax.
if [[ $(date +%k%M) -ge ${!BLOCK1FRAN} ]]; then whatever ; fi