Você deve separar os colchetes dos dados com espaços, como este:
for I in 0 1 2 3 4 5; do
check=$(uptime | tr -d ',.' | awk '{print $10}')
if [ "$check" -gt 5 ]; then
/usr/bin/systemctl restart httpd.service
fi
sleep 10
done
No UNIX, [é realmente um comando shell . Quando o shell substitui a variável $ check pelo seu valor, ele tentará encontrar o comando result, daí o erro. Além disso, sugiro que você cite a variável $ check, como se ela fosse substituída por uma string vazia ou um espaço em branco, seria por um erro de sintaxe.
Em relação à sua questão do crontab, execute crontab -e e adicione uma entrada como essa no seu arquivo:
* * * * * /PATH/TO/YOUR/SCRIPT
O tempo decorrido de resolução mínima de Cronjobs é de 1 minuto, portanto, você terá que usar um loop para repassar o cheque 6 vezes a cada dez segundos.