Я использую Ubuntu Server 12.04, теперь я хочу сделать резервную копию некоторых файлов с помощью rsync, вот попытка:
rsync -aAX $HOME/Documents/* $HOME/Backups/TEST --exclude={$HOME/Documents/another/*,$HOME/Documents/temp/*}
Как видите, я хочу сделать резервную копию всех файлов в папке $ HOME / Documents в папке $ HOME / Backups / TEST , но исключить файлы в папке another и temp . Но мне не удалось, rsync все равно скопировал файлы в обе исключенные папки:
ls $HOME/Backups/TEST/another
test
test это файл в папке другой , и он тоже копируется, хотя я исключаю файл в rsync, почему? Как сделать так, чтобы эти файлы были фактически исключены?
--exclude=/foo
исключит каталогfoo
непосредственно в источнике, но--exclude=foo
исключит любые каталоги с именем foo, даже в подкаталогах.Возможно, вам будет проще добавлять
.rsync-filter
файлы в исходные каталоги и использовать эту-F
опцию.Со страницы руководства:
Например: в $ HOME / Documents / .rsync-filter
Вместо этого
-
вы также можете написать все словоexclude
.Теперь вы можете
источник