«ipkg search xxx» всегда не возвращает ответа

«ipkg search xxx» всегда не возвращает ответа

На Synology NAS (использует 'домашний' вариант *nix (возможно, на основе Debian?)) я установил менеджер пакетов ipkg. Когда я пробую команду типа

ipkg search shred 

или

ipkg search *shred* 

он возвращает только одну строку:

Successfully terminated

без имени пакета.

Я специально использовал shred в своем примере, поскольку знаю, что shred существует для моей платформы и является частью пакета coreutils (и поэтому должен возвращать этот ответ).

Что не так? Это баг, ошибка в синтаксисе или что-то еще?

Редактировать -

Я нашел ответ - имя файла нужно было заключить в одинарные кавычки, например

ipkg search '*shred*'

Это возвращает правильный ответ - coretutils.

Я также обнаружил, что Павел прав, он возвращает только информацию оустановленпакеты, а это не то, что мне было нужно.

Как мне найти, какой пакет установить, если мне нужна определенная программа/утилита, которая является частью более крупной коллекции, но я не знаю, какой пакет ее содержит?

(это разрешено или мне следует задать другой вопрос?)

решение1

Я не думаю, что метаданные пакета включают списки файлов. Я считаю, ipkg searchчто они предназначены только для получения имен пакетов дляустановленфайлы, аналогично rpm -qf. Возможно, вам придется указать полный путь к установленному файлу.

При поиске информации оcoreutilsпакет, вы можете попробовать следующее:

ipkg info coreutils
ipkg status coreutils
ipkg files coreutils

Вы также можете увидеть, как отличаются результаты для установленных и неустановленных пакетов.

При поиске установленного пакета, предоставляющего определенный файл, вы можете использовать:

ipkg search /path/to/installed/file

Как вы указали в своем отредактированном вопросе, вам необходимо использоватьзвездочкаесли вы не хотите указывать полный путь, например:

ipkg search \*file

ipkg search '*file'

По моему мнению, невозможно получить никакой информации о файлах, которые не существуют или не были установлены.

Вам также может потребоваться проверить, есть ли у вас вообще метаданные для загруженных пакетов, и загрузить их:

ipkg update

Как мне найти, какой пакет установить, если мне нужна определенная программа/утилита, которая является частью более крупной коллекции, но я не знаю, какой пакет ее содержит?

ipkgНе могу вам помочь, так как у него нет данных. Не думаю, что в вашем дистрибутиве есть инструмент, apt-fileкоторый мог бы стать решением. В этом случае вам обычно приходится возвращаться к использованию веб-поиска, чтобы получить такую ​​информацию.

Источники:

Отказ от ответственности: я использую толькоopkgна OpenWRT, который очень близок кipkg.

Связанный контент