Использование rsync с Python.Более эффективная версия? - PullRequest
0 голосов
/ 26 августа 2018

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

Файлы PDF сохраняются / сохраняются на USB-накопителе (при подключении к компьютеру под управлением Windows).Затем тот же USB-накопитель берется на компьютер Mac, где выполняются команды rsync.Я хотел бы иметь скрипт, который проверяет источник (USB-накопитель) на наличие новых PDF-файлов, копирует их в место назначения, а также копирует только ** новый («дельта» другими словами, так какпоследний раз, когда выполнялся скрипт) файлы в подпапку на другом диске.

Я еще не нашел способ сделать это в одной команде.

Все PDF-файлы сохраняются и сохраняются на корневом уровне USB-накопителя.

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

sub = "arbritarySubFolderName"

wet_run_command = """rsync -rvcm --exclude=".*" --exclude=".*/"  --compare-dest=/Volumes/dest/ /Volumes/src/ /Volumes/newFilesOnly/""" + sub + """/"""
os.system(wet_run_command)

os.system("cp /Volumes/newFilesOnly/" + sub + "/* /Volumes/dest/")

Можно ли с помощью rsync обернуть это в одну команду?то есть, чтобы не использовать команду "cp" для копирования файлов обратно в '/ Volumes / dest /', чтобы при следующем запуске скрипта было сделано правильное сравнение rsync?

Мой скрипт полностью здесь

Спасибо!

Python 2.7 - Mac OS X 10.12

...