rsync - Виключити файли, що перевищують певний розмір?


43

Я роблю резервну копію робочого столу на віддаленій машині. Я в основному це роблю. rsync -a ~ example.com:backup/Однак є безліч великих файлів, наприклад, вивантажувальних сайтів у вікіпедії тощо. Більшість файлів, які я дуже дбаю про невеликі, наприклад файли cookie Firefox, або .bashrc. Чи є якесь виклик до rsync, який буде виключати файли, що перевищують певний розмір? Таким чином я міг би скопіювати спочатку всі файли, менші за 10 Мб, а потім зробити всі файли. Таким чином я можу зробити швидке резервне копіювання найважливіших файлів, а потім довше резервне копіювання всього іншого.


Так, усі ці .isoзображення чи .movекранні записи не лише займають цінний простір, але і цінний час. Я змагаюся з часом, щоб створити резервну копію комп'ютера, перш ніж передати його людям Apple iRepair людям, які приховують ваші дані, навіть коли це не потрібно.
Шрідхар Сарнобат

Відповіді:


74

Є max-sizeваріант:

--max-size=SIZE         don't transfer any file larger than SIZE

Тому:

# rsync -rv --max-size=1.5m root@tss01:/tmp/dm

Надсилатиме лише файли менше 1,5 м.

Щодо розмірів від людини: Суфікси такі: "K" (або "KiB") - це кібібайт (1024), "M" (або "MiB") - мебібайт (1024 * 1024) і "G" ( або "GiB") - це гібібайт (1024 * 1024 * 1024). Якщо ви хочете, щоб множник був 1000 замість 1024, використовуйте "KB", "MB" або "GB". (Примітка: для всіх значень також приймається нижній регістр.) Нарешті, якщо суфікс закінчується або "+1", або "-1", значення буде зміщене на один байт у вказаному напрямку *


3
Однак зауважте, що --max-size не є справжнім "виключенням" зі сторінки "man": Цей параметр є правилом передачі, а не виключенням, тому він не впливає на дані, що входять до списків файлів, і, таким чином, це не впливає на видалення. Це просто обмежує файли, які приймач вимагає передати.
schlicht
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.