Подайте заявку данные rsync исключают шаблоны на данном каталоге

Попробуйте это:

dialog --keep-window --begin 0 0 --tailboxbg /var/log/process1.log 20 110 \
  --and-widget --keep-window --begin 0 120 --tailboxbg /var/log/process2.log 20 110 \
  --and-widget --begin 21 100 --msgbox "Press Enter to exit." 5 25

Отрегулируйте числа, чтобы соответствовать вашим потребностям. Я должен был использовать Msgbox , чтобы сохранить диалог .

1
28.08.2014, 02:24
2 ответа

Следуя совету Кайла Джонса использовать доступные опции rsync для выполнения работы (вместо того, чтобы кодировать одну), я нашел

rsync --include-from=file_to_exclude --recursive \
--delete-excluded \
/var/somedir/ /var/somedir/

, чтобы работать просто отлично. Я также пытался использовать --игнор-существующий --игнор-несуществующий --делете по нескольким сценариям, но результат был таким же, как и без этих 3-х опций.

0
28.01.2020, 01:54

Не делай этого. Это очень плохая идея - пытаться воспроизвести то, что делают шаблоны включения / исключения rsync, без использования rsync. Тот факт, что некоторые из шаблонов могут быть сложными, является еще большей причиной не пытаться это сделать. Используйте сам rsync, чтобы гарантировать последовательное поведение и минимизировать неожиданности.

На странице руководства rsync:

- existing, --ignore-non-existing

  Это указывает rsync пропустить создание файлов (включая каталоги)
  которые еще не существуют в пункте назначения.  Если эта опция
  в сочетании с параметром --ignore-existing файлы не будут
  обновлено (что может быть полезно, если все, что вы хотите сделать, это удалить
  посторонние файлы).
 

Таким образом, вы должны запустить с --delete --delete-excluded --ignore-existing --ignore-non-existing, и rsync удалит посторонние файлы, а не обновит и не удалит какие-либо другие файлы.

0
28.01.2020, 01:54

Теги

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