ZIP-архивы, созданные в системах Mac OS X, обычно включают каталог __MACOSX
который бесполезен, раздражает и нежелателен практически во всех других ОС.
Для распаковки ZIP-архивов я использую Info-ZIP, который, я думаю, является распаковкой по умолчанию в большинстве дистрибутивов Linux. Как лучше всего unzip
Info-ZIP всегда и автоматически подавить извлечение любого __MACOSX
который может присутствовать?
Согласно man-странице unzip
, опция -x
может использоваться для исключения каталогов из обработки, и действительно добавление -x __MACOSX/*
в конец моей командной строки unzip
делает свое дело. Но я не хочу постоянно это печатать. Страница man также говорит, что параметры командной строки можно прочитать из переменной среды UNZIP
, но, очевидно, это работает только для тех параметров, которые идут перед именем архива (тогда как -x
должен идти после него):
$ export UNZIP="-x __MACOSX/*"
$ unzip foo.zip
unzip: cannot find or open __MACOSX, __MACOSX.zip or __MACOSX.ZIP.
Есть ли лучшее решение, чем упаковка unzip
в сценарий оболочки, который автоматически добавляет -x __MACOSX/*
в конец командной строки?