Marcelo, o "BASH" aqui é o /bin/bash.
Eu estava chamando o script no formato sh reacende.sh, por isso acusava o erro.
Chamando como ./reacende.sh ele executa (fica correndo o "SYNC" e checando o log a cada minuto).
O teste da função CHECA_HORA também funcionou corretamente.
Nossa, com suas explicações, eu vi que tenho MUUUUUITO que aprender sobre shell script ainda...
Quando tentei executar ele em background com o comando ./reacende.sh & 2>&1 /dev/null, recebo a mensagem [1] 10880 -bash: /dev/null: Permissão negada, porém o script roda normalmente em background, porém inserindo suas mensagens na tela. Uma última dúvida de novato: na função CHECA_LOG do segundo script, os 3 "#" que aparecem não estão comentando estas linhas?
===========================================
Boa noite, Moacir.
Executando como: sh reacende.sh, obviamente, ele usa o "sh", e o mesmo não tem as mesmas funções do "BASH".
Quanto ao comando ./reacende.sh & 2>&1 /dev/null, sinceramente desconheço, encontrei aqui no VOL.
Recomendo PESQUISAR sobre o assunto . . . As linhas comentadas, estão erradas . . .
Alterei para testar no meu PC, e esqueci de voltar ao normal . . . .
Tinha até uma MENSAGEM . . . "EXTRA" . . . :)
echo -e "CHECA_LOG => $(date +%H:%M:%S)\n$MN"
Nossa, com suas explicações, eu vi que tenho MUUUUUITO que aprender . . .
A DICA é: LEIA MUITO . . . .
Recomendo, além do VIVA O LINUX o aurelio.net, foi lá que tive uma boa noção sobre REGEX e outras coisas . . . Em aurelio.net/canivete É um resumo de alguns comandos, sempre consulto, fiz ate um SCRIPT dele . . . .
Meu "começo" no shell script, foi pegar um script pronto e entender cada linha, cada comando . . . .
TUDO ARRUMADO . . . . OBS.: TEM DUAS VERSÕES DA "FUNÇãO SINC", ESCOLHA UMA e APAGUE a OUTRA . . .
#!/bin/bash
ARQ="/var/log/apcupsd.events"
MSG="Power is back. UPS running on mains."
NS="1"