Моя задача rsync cron не запускается в ожидаемое время, и ниже приведены мои сценарии. Это дает мне ошибку:

crond [9231]: невозможно создать почтовый файл /var /spool /cron /cron.YSwg8Z /cron.root.9290: вывод cron для пользователя root /usr /bin /run-parts /etc/cron.hourly 1> /dev /null to /dev /null

Крон:

#!/bin/sh
echo "START NOW ......"
DOMAINS=""

BIGDOMAINS=""

mailadmin=""
sysemail="mailsync_script@xxx.xx.xx"
Date=$(date)
start_date=`date +"%d-%m-%Y %r"`
for domain in $DOMAINS; do
    rsync -arv --delete /data1/popmail/$domain/ -e ssh root@xxx.xx.xx.xx:/data/popmail/$domain/
done
sleep 10
for bigdomain in $BIGDOMAINS; do
    rsync -arv --delete /data1/popmail/$bigdomain/ -e ssh root@xxx.xx.xx.xx:/data/popmail/$bigdomain/
end_date=`date +"%d-%m-%Y %r"`
echo "Backup for all Email Domains Started at $start_date and Completed at $end_date. " | mailx -r $sysemail -s "Backup Successful on $Date" $mailadmin

Ошибка:/usr/local/scripts/WSdomainsrsync: строка 20: синтаксическая ошибка: неожиданный конец файла

Может ли кто-нибудь помочь в этом

1 ответ1

1

Там нет done чтобы закрыть этот второй (bigdomain) for цикла.

Я предполагаю, что вы хотели поместить команду done после команды rsync .

for bigdomain in $BIGDOMAINS; do
    rsync -arv --delete /data1/popmail/$bigdomain/ -e ssh root@xxx.xx.xx.xx:/data/popmail/$bigdomain/
done

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .