Unix: zip-папка игнорирует структуру папок и исключает подкаталог

Unix: zip-папка игнорирует структуру папок и исключает подкаталог

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

Я пытался:

zip -rj /path/to/target.zip /path/to/source -x "/path/to/source/subfolder/*"

Это не работает, zip возвращает сообщение:

Ошибка zip: Ничего не поделаешь! (/path/to/target.zip)

решение1

Выдержка изman 1 zip

[...] входной шаблон, такой как

       /foo/bar/*

обычно будет соответствовать обоим путям, * соответствует dir/file1.c и file2.c. Обратите внимание, что в первом случае граница каталога (/) была пересечена в соответствии. С -ws никакие границы каталога не будут включены в соответствие, делая подстановочные знаки локальными для определенного уровня каталога. Таким образом, с включенным -ws будет соответствовать только второй путь.

При использовании -ws используйте ** для сопоставления за пределами границ каталогов, как это обычно делает *.

Это также верно при использовании-x

Поэтому для ваших целей удвойте *шаблон исключения, если это каталог:

zip -rj /path/to/target.zip /path/to/source -x "/path/to/source/subfolder/**"

Связанный контент