From 58d38bc806ed890e40bb6f294f55b4bdc7009c5b Mon Sep 17 00:00:00 2001 From: Alexei Bezborodov Date: Tue, 10 Jan 2023 15:16:17 +0300 Subject: [PATCH] 2sync --- Backup/2sync | 14 ++++++++++++++ Backup/2sync_all | 27 +++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100755 Backup/2sync create mode 100755 Backup/2sync_all diff --git a/Backup/2sync b/Backup/2sync new file mode 100755 index 0000000..cd70eae --- /dev/null +++ b/Backup/2sync @@ -0,0 +1,14 @@ +#!/bin/bash + +# Двухсторонняя синхронизация +# Использование: +# 2sync src dest + +src=$1 +dest=$2 +opt=$3 + +rsync -r -t -v $opt --progress -s --omit-dir-times $src $dest +rsync -r -t -v $opt --progress -s --omit-dir-times $dest $src + + diff --git a/Backup/2sync_all b/Backup/2sync_all new file mode 100755 index 0000000..ad1da5c --- /dev/null +++ b/Backup/2sync_all @@ -0,0 +1,27 @@ +#!/bin/bash + +# Двухсторонняя синхронизация с сервером всех объектов в текущей папке +# Использование: +# 2sync_all filter dest_base opt +# filter - маска по файлам +# dest_base - базовый путь для синхронизации, может содержать сервер, например: backup@www_server:/media/Backup +# opt - дополнительные опции rsync. Для теста можно использовать: opt = -n + +filter=$1 +dest_base=$2 +opt=$3 + +files=`ls -p | grep / | grep ${filter} |sort` + +cur_dir="$(pwd)/" + +for file in $files; do + src="${cur_dir}/${file}/" + dest="${dest_base}/${file}/" + + ./2sync $src $dest $opt +done + + + +