Поиск по сайту:

Как исключить файлы определенного размера из копирования в Linux

Несколько дней назад я объяснил, как сделать резервную копию всей вашей системы Linux с помощью утилиты Rsync. Одна из проблем, с которой я столкнулся в процессе резервного копирования, заключалась в том, что копирование некоторых файлов большого размера занимало много времени. Мне пришлось скопировать несколько фильмов размером более 3 ГБ. Итак, я подумал, что было бы лучше, если бы я мог просто исключить большие файлы или любые неважные файлы, чтобы завершить резервное копирование как можно скорее. Итак, я смогу скопировать остальные файлы, когда у меня будет свободное время. Если вы когда-либо оказывались в такой же ситуации, как я, вот простой способ исключить файлы определенного размера из копирования с помощью команды rsync и/или find в Unix-подобных операционных системах. .

Исключить файлы определенного размера из копирования в Linux

Как я уже сказал, мы можем сделать это с помощью команды rsync или find.

Исключить файлы определенного размера из копирования с помощью команды «rsync»

Читая справочные страницы команды rsync, я узнал, что существует возможность исключить файлы определенного размера из копирования. Вы можете просто исключить их из копирования. Когда у вас появится свободное время, вы сможете скопировать остальные исключенные файлы.

Допустим, вы хотите исключить размер более 5 МБ. Все, что вам нужно сделать, это использовать параметр "--max-size=SIZE" с командой rsync. Этот вариант не будет передавать файлы размером больше указанного.

Позвольте мне показать вам простой пример.

rsync -rv --max-size=5m /home/sk/Downloads/ /home/sk/ostechnix/

Здесь,

  • rsync – быстрый, универсальный инструмент локального и удаленного копирования файлов.
  • -rv – рекурсивный и подробный режим
  • --max-size=5m — файлы размером более 5 МБ не передаются.
  • /home/sk/Downloads/ – исходный каталог.
  • /home/sk/ostechnix/ — каталог назначения.

Приведенная выше команда скопирует все файлы размером менее 5 МБ из каталога /home/sk/Downloads/ в каталог /home/sk/ostechnix/. Он исключит все файлы размером более 5 МБ.

Хотите знать, что будет делать каждый аргумент команды Linux? См. следующую ссылку.

  • ExplainShell: узнайте, что делает каждая часть команды Linux

Вы также можете использовать "--min-size=SIZE", чтобы перенести любой файл, размер которого меньше указанного.

Например, чтобы перенести файлы размером менее 10 МБ, выполните следующую команду:

rsync -rv --min-size=10m /home/sk/Downloads/ /home/sk/ostechnix/

Исключить файлы определенного размера из копирования с помощью команды «Найти»

Мы также можем исключить файлы определенного размера из копирования с помощью команд find и cp.

Взгляните на следующую команду:

find . -size -10M -exec cp -r {} /home/sk/ostechnix/ \;

Приведенная выше команда найдет все файлы размером менее 10 МБ в текущем каталоге и скопирует их в каталог /home/sk/ostechnix/.

Рекомендуем прочитать:

  • Как быстро передавать большие файлы по сети в Linux и Unix
  • Как узнать размер каталога в Linux из командной строки

И это все. Знаете ли вы какой-нибудь другой простой способ скопировать файлы только определенного размера и исключить остальные? Не стесняйтесь, дайте нам знать в разделе комментариев ниже. Скоро я буду здесь с еще одним интересным гидом. А до тех пор следите за обновлениями OSTechNix.

Ваше здоровье!

Статьи по данной тематике