Linux резервное копирование папки поштучно

Ограничение, которое вы упомянули, обычно связаны с использованием EXEC , не специфичнее для отдельных команд. Цель XARGS является именно для решения этой проблемы; XARGS займет как можно больше аргументов, чтобы накормить команду. Это получит вам наименьшее количество командных звонков и, таким образом, хорошая производительность. Снижение количества аргументов для команды явно указано -N , ничего не получит в этом отношении. Вы можете использовать -N E.g. В тех случаях, когда команды ожидают определенного количества аргументов, с особым случаем, когда команда можно назвать один раз для каждого аргумента. (Обратите внимание, что находит также имеет вариант -EXEC и специальный терминатор + для облегчения аналогичного поведения.)

-1
13.10.2015, 18:11
1 ответ

Вот сценарий, который выполняет то, о чем вы просили:

ls /home/software/ | while read d
 do
  tar czf "/home/software/$d-$(date +%y%m%d).tar.gz" "/home/software/$d"
 done
find /home/software -type f -name '*.tar.gz' -mtime +10 -exec rm {} \;

или

cd /home/software/
ls | while read d
 do
  tar czf "$d-$(date +%y%m%d).tar.gz" "$d"
 done
find . -type f -name '*.tar.gz' -mtime +10 -exec rm {} \;
1
28.01.2020, 05:11

Теги

Похожие вопросы