Команда Crontab не функционирует правильно

У меня есть следующая crontab запись для автоматизации копирования моих файлов для разделения W/S в сети. Однако это не копирует файлы, но производит файл журнала. вот содержание файла

#! /bin/bash
echo "Rsync - MA Inbound Files"
rsync -rvu /media/hdd2/MA-Inbound /media/miracle/
echo "Completed MA Inbound Files Sync, Starting Tally.ERP 9 Data File Sync"

rsync -rvu /media/hdd2/Tally.ERP9 /media/miracle/
echo "Completd Tally.ERP9 Data File Sync, Starting 2011 Accounts Files Sync"

rsync -rvu /media/hdd2/"2011 Accounts" /media/miracle/
echo "Completd 2011 Accounts Files Sync, Starting 2012 Accounts Files Sync"

rsync -rvu /media/hdd2/"2012 Accounts" /media/miracle/
echo "Completd 2012 Accounts Files Sync, Starting 2012 Files Sync"

rsync -rvu /media/hdd2/"2012 Files" /media/miracle/
echo "Completd 2012 Files Sync, Starting 2013 Accounts Files Sync"

rsync -rvu /media/hdd2/"2013 Accounts" /media/miracle/
echo "Completd 2013 Accounts, Starting Admin Files Sync"

rsync -rvu /media/hdd2/"Admin" /media/miracle/
echo "Completd Admin Files Sync, Starting MA_Staff Data File Sync"

rsync -rvu /media/hdd2/MA_Staff /media/miracle/
echo "Completd MA_Staff Data File Sync, Starting MA-Outbound Data File Sync"

rsync -rvu /media/hdd2/MA_Outbound /media/miracle/
echo "Completd MA-Outbound Data File Sync, Starting Staff Pic Data File Sync"

rsync -rvu /media/hdd2/"Staff Pic" /media/miracle/
echo "Completd Staff Pic Data File Sync, End OF Syn"

вот команда, которая я вставил crontab файл

30 22 * * * /Desktop/marsync.sh >AutoRsyncLogfile.txt

Когда я копирую эти команды индивидуально, это работает безупречно

Надежда кто-то может помочь мне остроумие это.....

Спасибо

0
задан 26 August 2014 в 02:59

2 ответа

Вы не заявляете, что содержит файл журнала; я предполагаю, что это пусто.

, Если это так, похоже, что Ваша проблема происходит из-за пути, используемого в crontab файле:

30 22 * * * /Desktop/marsync.sh >AutoRsyncLogfile.txt

/Desktop часть является, вероятно, неправильной; Desktop каталог обычно находится в Вашем корневом каталоге (т.е., /home/<username>), и может быть сослан $HOME переменная среды.. Если Вы изменяете это на что-то как:

30 22 * * * $HOME/Desktop/marsync.sh >AutoRsyncLogfile.txt

- тогда это должно работать. Необходимо будет также удостовериться, что marsync.sh файл является исполняемым файлом:

chmod a+x $HOME/Desktop/marsync.sh

кроме того, Вы могли бы хотеть зафиксировать стандартную ошибку (в дополнение к стандартному выводу) к Вашему файлу журнала. Используйте &>, чтобы сделать это:

30 22 * * * $HOME/Desktop/marsync.sh &>AutoRsyncLogfile.txt
3
ответ дан 5 August 2019 в 08:10

Необходимо назвать все команды включая путь:/usr/bin/rsync, или определяют путь в сценарии: взгляд здесь

-1
ответ дан 5 August 2019 в 08:10

Другие вопросы по тегам:

Похожие вопросы: