Удалить один файл из zip архива на Linux

у меня zip архив (создается автоматически скриптом с -j -r flags) и я хотел бы удалить из него один файл. Я пытался, как задокументировано.

zip -d "picture_43_9.jpg" gallery.zip

но я получаю эту ошибку:

zip warning: picture_43_9.jpg not found or empty   
zip error: Nothing to do! (picture_43_9.jpg)  

там is такой файл внутри архива и он не пустой:

unzip -l .../gallery.zip | grep -i 43_9.jpg  
1477092  2013-05-22 14:23   picture_43_9.jpg 

любые идеи о том, что я делаю неправильно?

26
задан Hennes
18.04.2023 7:24 Количество просмотров материала 3233
Распечатать страницу

1 ответ

у вас есть аргументы меняются местами. Попробуйте это:

zip -d gallery.zip "picture_43_9.jpg" 

С zip (1) на странице:

-d

--delete

Удаление записей из zip-архива. Например:

zip  -d  foo  foo/tom/junk  foo/harry/\*  \*.o

удалить запись foo/tom/junk все файлы, которые начинаются с foo/harry/ и все файлы, которые заканчиваются .o (по любому пути). Отмечать это расширение пути оболочки было заблокировано обратными косыми чертами, поэтому это zip можно увидеть звездочки, что позволяет zip в матче на содержание из zip архивировать вместо содержимого текущего каталога. (Символы не используются на рекламного платформ.) Смогите также использовать цитаты, чтобы избежать звездочек, как в

zip -d foo foo/tom/junk "foo/harry/*" "*.o"

не избежать звездочки в системе, где оболочка расширяет подстановочные знаки могут привести к преобразованию звездочек в список файлы в текущем каталоге и этот список используется для удаления записей из архива.

под MSDOS, - d чувствителен к регистру, когда он соответствует имена в zip архиве. Для этого необходимо ввести имена файлов верхний регистр, если они были заархивированы PKZIP на системе MSDOS. (Мы сделать это без учета регистра в системах, где пути были случай нечувствительный, но возможно архив пришел от системы где случай имеет значение, и архив может включать оба Bar и bar как отдельные файлы в архиве.) Но смотрите новую опцию - ic для игнорировать регистр в архиве.

81
отвечен jaypal singh 2023-04-19 15:12

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх