Используйте команду "ar", чтобы удалить модуль из архива. - PullRequest
0 голосов
/ 03 мая 2018

Я пытаюсь заменить "control.tar.gz" на мои архивы (файлы .deb), это работает хорошо, но, к сожалению, некоторые из моих архивов скомпилированы с использованием сжатия Lzma (.xz). Поэтому я попытался удалить модуль с именем «control.tar.xz» в мой архив:

ar d my-archive.deb control.tar.xz

Без успеха. У меня есть эта ошибка:

ar: control.tar.xz: not found in archive

Полный журнал:

$ ar tv MyDebian.deb
rw-r--r--       0/0             4 May  3 01:29 2018 debian-binary/
rw-r--r--       0/0          2416 May  3 01:29 2018 control.tar.xz/
rw-r--r--       0/0        125940 May  3 01:29 2018 data.tar.xz/
$ ar d MyDebian.deb control.tar.xz
ar: control.tar.xz: not found in archive

Кто-то знает, что не так с моей командой?

Спасибо

1 Ответ

0 голосов
/ 04 мая 2018

Либо вам не хватает «/» в конце команды «ar d MyDebian.deb control.tar.xz», так как «ar tv» показывает содержимое с «/» в конце.

Более уместным является тот факт, что у вас есть "/" в конце файлов, содержащихся в файле .deb. ИМО, "/" не должно присутствовать. Итак, вы можете просмотреть генерацию файла .deb и узнать, почему присутствует косая черта.

Если косая черта не имеет значения, попробуйте "ar d MyDebian.deb control.tar.xz /", и она должна работать. Просто мой 2с.

...