0anacron
error:
Este é o código correto:
#!/bin/bash
# Skip excecution unless the date has changed from the previous run
if test -r /var/spool/anacron/cron.daily; then
day="$(cat /var/spool/anacron/cron.daily)"
fi
if [ "$(date +%Y%m%d)" == "$day" ]; then
exit 0
fi
# Skip excecution unless AC powered
if test -x /usr/bin/on_ac_power; then
/usr/bin/on_ac_power &> /dev/null
if test $? -eq 1; then
exit 0
fi
fi
/usr/sbin/anacron -s
Isso corrige o problema [: =: unary operator expected
. Aqui está uma lista de falhas corrigidas no código ordenadas por relevância, a primeira é a pior:
-
No bash, você perdeu um sinal de igual. É
==
em vez de=
. -
'
(backtick) Foi descontinuado, use$(command)
em vez de'command'
- Você terminou a 8ª linha com um ponto-e-vírgula quando não há necessidade de fazer isso.
- Recue seu código de 2 ou 4 espaços uniformemente.
date
error:
Seu binário /bin/date
parece estar corrompido, você viu que link