Папка Compressing на aws экземпляре создает дубликат

У меня есть веб-приложение в этом пути

var/app/current

Я использую эту команду для архивирования всего включая скрытые файлы как htaccess

zip -r yourfile.zip * .*

Это генерирует заархивированный файл, который содержит файлы веб-приложения и папки в дополнение к папке, названной текущей, который содержит другую копию файлов веб-приложения и папок.

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

2
задан 27 May 2018 в 15:38

1 ответ

Вы не можете использовать .*, потому что тот шарик оболочки будет также соответствовать . и .. (текущий и родительский каталог), вызывая поведение Вы описали.

Но это не необходимо так или иначе, можно просто использовать zip -r опция самостоятельно. Позвольте мне заключить страницу руководства в кавычки man zip:

   -r
   --recurse-paths
          Travel the directory structure recursively; for example:

                 zip -r foo.zip foo

          or more concisely

                 zip -r foo foo

          In this case, all the files and directories in foo are saved  in
          a zip archive named foo.zip, including files with names starting
          with ".", since the recursion does not use the shell's file-name
          substitution  mechanism.  If you wish to include only a specific
          subset of the files in directory foo and its subdirectories, use
          the  -i  option  to specify the pattern of files to be included.
          You should not use -r with the name  ".*",  since  that  matches
          ".."   which will attempt to zip up the parent directory (proba‐
          bly not what was intended).

          Multiple source directories are allowed as in

                 zip -r foo foo1 foo2

          which first zips up foo1 and then foo2, going down  each  direc‐
          tory.

          [...]

Таким образом, Вы просто указываете папку, как которая Вы хотите архивировать:

zip -r yourfile.zip /var/app/current

Или если Ваш текущий каталог уже /var/app/current, просто:

zip -r yourfile.zip .
4
ответ дан 2 December 2019 в 02:13

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

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