Пакетный скрипт для перемещения файлов в zip - PullRequest
2 голосов
/ 09 июня 2011

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

Я не могу использовать стандартный zipфункция, потому что у меня недостаточно места для размещения создаваемого почтового индекса.

Так что любые предложения, пожалуйста

Ответы [ 4 ]

1 голос
/ 21 июня 2011

Не очень хорошее решение, но простое, в итоге я нашел скрипт Python, который рекурсивно архивирует папку, и просто добавил строку для удаления файла после его добавления в zip

1 голос
/ 09 июня 2011

Попробуйте это:

zip -r -m source.zip *
0 голосов
/ 15 ноября 2016

Я использую:

zip --move destination.zip src_file1 src_file2

Здесь подробно о опции "--move" из справочных страниц

- перемещение

Переместить указанные файлы в zip-архив; на самом деле, это удаляет целевые каталоги / файлы после создания указанного почтового индекса архив. Если каталог становится пустым после удаления файлов, каталог также удаляется. Удаление не производится, пока zip не создал архив без ошибок. Это полезно для сохранения диска пространство, но потенциально опасно, поэтому рекомендуется использовать его в сочетание с -T для проверки архива перед удалением всех вводимых файлы.

0 голосов
/ 21 апреля 2016

Вы можете достичь этого, используя find как

find . -type f -print0 | xargs -0 -n1 zip -m archive

. Это позволит переместить каждый файл в zip-файл, сохраняя структуру каталогов.Затем у вас остаются пустые каталоги, которые вы можете легко удалить.Более того, использование find дает вам большую свободу в том, какие файлы вы хотите сжать.

...