Результат “rsync”

Я должен создать сценарий, который выполняет периодически (каждые 5 секунд) rsync между двумя каталогами.

Одно требование - то, что я должен записать, с меткой времени, скопированными файлами в файл журнала, но я не могу найти способ получить результат rsync скопированные файлы. Существует ли способ знать, какие файлы были скопированы?

1
задан 9 September 2016 в 00:45

3 ответа

Можно использовать -v опция (--verbose) rsync для получения, какие файлы копируются.

Для получения конкретным вывод, rsync имеет --info опция.

, Например, для получения только файлов, которые, как предполагалось, были скопированы, successful/unseccessful оба показанные:

rsync --info=name /source /destination

Для получения только статистики передачи:

rsync --info=stat /source /destination

можно использовать верхний регистр в значении опции также (например, --info=NAME) и добавить 2 после значения опции для увеличения многословия, если возможный (например, --info=NAME2).

существует много других возможностей также, проверяет man rsync и особенно rsync --info=help:

% rsync --info=help
Use OPT or OPT1 for level 1 output, OPT2 for level 2, etc.; OPT0 silences.

BACKUP     Mention files backed up
COPY       Mention files copied locally on the receiving side
DEL        Mention deletions on the receiving side
FLIST      Mention file-list receiving/sending (levels 1-2)
MISC       Mention miscellaneous information (levels 1-2)
MOUNT      Mention mounts that were found or skipped
NAME       Mention 1) updated file/dir names, 2) unchanged names
PROGRESS   Mention 1) per-file progress or 2) total transfer progress
REMOVE     Mention files removed on the sending side
SKIP       Mention files that are skipped due to options used
STATS      Mention statistics at end of run (levels 1-3)
SYMSAFE    Mention symlinks that are unsafe

ALL        Set all --info options (e.g. all4)
NONE       Silence all --info options (same as all0)
HELP       Output this help message

Options added for each increase in verbose level:
1) COPY,DEL,FLIST,MISC,NAME,STATS,SYMSAFE
2) BACKUP,MISC2,MOUNT,NAME2,REMOVE,SKIP
<час>

Пример:

% rsync --info=name test.txt foobar:/spamegg/
test.txt

% rsync --info=stats test.txt foobar:/spamegg/
sent 86 bytes  received 41 bytes  254.00 bytes/sec
total size is 10  speedup is 0.08
2
ответ дан 7 December 2019 в 12:38

Используйте эти -v флаг, в дополнение к тому, в чем других флагах Вы нуждаетесь.

От man rsync :

-v, - подробный

Эта опция увеличивает объем информации, который Вам дают во время передачи. По умолчанию rsync работает тихо. Сингл -v даст Вам информацию о том, какие файлы передаются и краткий обзор в конце. Два -v опции дадут Вам информацию о том, какие файлы пропускаются и немного больше информации в конце....

1
ответ дан 7 December 2019 в 12:38

В случае, если кому-то когда-либо нужен он... После многих тестов я иду для чего-то как:

#!/bin/bash
rm out.log
touch out.log
while :
do
rsync --log-file=out.log -a /tmp/test /tmp/backup
counter=`wc -l < out.log`
echo $counter
rm out.log
if [[ $counter -gt 2 ]]; then
rsync --log-file=out.log -a /tmp/test /tmp/backup
fi
sleep 5
done
0
ответ дан 7 December 2019 в 12:38

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

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