Скрипт синхронизации набора каталогов в облако Mega

Shell-script to syncronize directory list to Mega cloud drive

И вновь по просьбам помочь с усовершенствованием скрипта синхронизации с облачным харанилищем Mega, описанным в соответствующей статье, публикую его доработанную с учётом пожеланий версию.

Основным ограничением упомянутого выше скрипта является его направленность на работу исключительно с одним конкретным каталогом (и, конечно же, вложенным в него, подкаталогами и файлами). При этом в качестве маркера времени для отслеживания изменений выступает дата модификации ведущегося файла протокола.

Очевидно, что в случае, если требуется независимая синхронизация набора каталогов объём которых и, соответственно, и время потребное на их загрузку во внешнее хранилище, может быть существенным, такой подход применять нельзя, поскольку всегда есть риск, что содержимое одного из синхронизируемых каталогов может измениться в этот промежуток и, следовательно, оно не будет впоследствии идентифицированно как обновлённое.

В связи с поступающими запросами от публики по вопросам использования упомянутого в прошлом посте пакета Megatools, который предназначе для работы с облачным хранилищем MEGA из командной строки, предлагаю пример простого shell-скрипта для синхронизации данных из локальной папки.

В связи с принятием в основное дерево портов FreeBSD очередного релиза пакета инструментов Megatools который предназначен для работы из командной строки с шифрованным облачным хранилищем MEGA, хотелось бы ещё раз порекомендовать его для использования самой широкой аудиторией.

Останавливаться на самом инструментарии я не буду, поскольку он великолепно документирован автором, а вот вкратце о том, почему именно MEGA, а не Dropbox и иже с ним напишу.