Идеальный способ взять резервное копирование zip

Я пытаюсь архивировать текст, файлы CSV от папки еженедельно. На основе ответа, данного моему более раннему вопросу, я получил эту работу кода.

sudo find . -mtime +7 | sudo zip -m archive-$(date +%Y-W-%U).zip -@

Я хотел бы точно настроить это немного больше так, чтобы:

  • Файлы с определенными строками исключены.
  • вывод zip сохраняется к другому местоположению

Я думал, что получил первую часть с ниже команды, но это продолжает замерзать.

sudo find . -mtime +7 | sudo zip -m -x /*excludestring1* /*excludestring2* archive-$(date +%Y-W-%U).zip -@

Я не могу выяснить способ сохранить его к другому местоположению. Я мог включать "*.zip" как исключение, но я предпочту сохранять его к другому местоположению. Мог кто-то помогать мне выяснить то, что я делаю неправильно.

1
задан 13 April 2017 в 15:23

2 ответа

страница справочника указывает, что эти \ должен использоваться, чтобы избежать замены имени файла оболочки и позволить zip, разворачивают подстановочные знаки самой.

, Кроме того, можно использовать эти -x переключатель для определения файла, перечисляющего любые исключения в формате -x@excludes.lst

На немного отличающемся гвозде, эти find, команда имеет -not и -path опции, которые могут использоваться для подобного эффекта.

0
ответ дан 7 December 2019 в 16:13
  1. Для исключения некоторых шаблонов используйте -x опция в конце и используйте одинарные кавычки вокруг шаблонов так, чтобы шаблоны были расширены на zip не оболочкой:

    sudo find . -mtime +7 | sudo zip -m  archive-$(date +%Y-W-%U).zip -@ -x '/*excludestring1*' '/*excludestring2*'
    
  2. Для сохранения zip-файла к другому местоположению используйте полный путь (или относительный путь) к местоположению, которое Вы хотите сохранить zip файл:

    sudo find . -mtime +7 | sudo zip -m -x /*excludestring1* /*excludestring2* /where/to/save/archive-$(date +%Y-W-%U).zip -@
    

    Замена /where/to/save с фактическим путем, где Вы хотите сохранить zip-файл.

    , Например, для сохранения его в /tmp/spam/ каталог:

    sudo find . -mtime +7 | sudo zip -m -x /*excludestring1* /*excludestring2* /tmp/spam/archive-$(date +%Y-W-%U).zip -@
    
1
ответ дан 7 December 2019 в 16:13

Другие вопросы по тегам:

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