Содержание zip некоторых подпапок, но не других

мой любимый является экс-энергией. Имеют много плагинов энергии, которое делает это очень простым в использовании с большой кодовой базой. Я до занимаю приблизительно 1 день для изучения его функций, но это будет стоить того.

2
24.05.2011, 23:11
3 ответа
$ zip -r dir1 dir1 -x dir1/dir3/*

работы для меня. Здесь -x исключить опция. Вы могли также использовать включать опцию, но в этом случае, исключить опция включает меньше ввода.

На самом деле вопрос не абсолютно ясен. Вы хотите все каталоги и файлы под dir3 исключенный также, или просто файлы под dir3? Команда выше только работает на последнего.

4
27.01.2020, 21:55

Один метод для работы с архивными файлами должен смонтировать их и затем получить доступ к ним как нормальные каталоги. FUSE доступен для большинства нельдов и поддерживает несколько файловых систем для доступа к сжатым файлам прозрачно. Для zip-файлов возможности включают zip предохранителя (AVFS также удобен, но только для чтения).

Например, с zip предохранителя, вот то, как смонтировать архив и скопировать файлы в него.

mkdir tmp
fuse-zip /path/to/zip tmp
rsync -av --exclude='/dir1/dir3/*' dir1 tmp/
fusermount -u tmp; rmdir tmp
2
27.01.2020, 21:55
  • 1
    Интересный подход. я знаю mc также имеет поддержку создания виртуальных файловых систем для архивов. –  Faheem Mitha 25.05.2011, 12:20

Попробуйте эту команду из родительского каталога dir1:

tar --exclude=dir3/* -cf - dir1/ | zip dir1.zip -

И разархивировать dir1.zip используют эту команду:

unzip -p dir1.zip | tar xf -
0
27.01.2020, 21:55

Теги

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