Я пытаюсь создать ZIP-файл, используя zip
инструмент командной строки , который поставляется с Mac OS X Terminal. Я хочу рекурсивно сжимать содержимое текущей папки, но исключая .DS_Store
файлы. Я пытаюсь с этим:
zip -r myarchive.zip . -x .DS_Store
В -x .DS_Store
Исключая .DS_Store
файл в текущей папке, но не в рекурсивно добавляются вложенные папки. Как мне исключить все .DS_Store
файлы из ВСЕХ подпапок?
*
расширяется до нуля или любой части пути, поскольку zip рекурсивно сжимает файлы и их каталоги. Итак,./.DS_Store
то./*/.DS_Store
и так далее исключаются из архива.В большинстве случаев я хочу исключить все скрытые файлы, такие как
.DS_Store
или.git
или.gitignore
С помощью одной простой команды вы можете позаботиться обо всем этом и рекурсивно сжать все файлы и подпапки.
zip -r archive.zip folder -x "*/\.*"
Или даже лучше, создайте функцию в Zsh, чтобы сделать жизнь проще
open ~/.zshrc
Добавьте следующий код в раздел псевдонимов
Перезагрузите конфигурацию zsh
source ~/.zshrc
Используйте как это
zip-visible archive.zip folder
источник