Добавить zip-файлы из одного архива в другой с помощью командной строки - PullRequest
0 голосов
/ 07 января 2011

У меня есть два архива.Например, set1 имеет 10 файлов CSV, созданных с помощью опции Mac OS X 10.5.8 compress, а set2 имеет 4 файла CSV, созданных аналогичным образом.Я хочу взять 4 файла из архива set2 и добавить их в список файлов в архиве set1.Есть ли способ, которым я могу сделать это?

Я попробовал следующее в терминале:

zip set1.zip set2.zip

Это добавляет весь архив set2.zip к set1.zip, то есть в set1.zipтеперь у меня есть:

file1.csv, file2.csv,..., file10.csv, set2.zip

Вместо этого я хочу:

file1.csv, file2.csv,..., file10.csv, file11.csv, ..., file14.csv

, где set2.zip - архив, содержащий file11.csv, ..., file14.csv.

Спасибо.

Ответы [ 3 ]

1 голос
/ 07 января 2011
unzip set2.zip -d .tmpdir; cd .tmpdir; zip ../set1.zip *; cd ..; rm -r .tmpdir;
1 голос
/ 07 января 2011

Я не знаю о встроенном инструменте OS X, но есть утилита zipmerge как часть libzip пакета ( hg хранилище доступно).

0 голосов
/ 07 января 2011

Этот скрипт должен это сделать.

zipjoin.sh

#!/bin/bash
#Example: ./zipjoin.sh merge_into.zip merge_from.zip
mkdir .tmp
unzip $2 -d .tmp
zip $1 .tmp/*
rm -r .tmp

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...