Поиск пакета, который предоставляет заданную команду.

pacman, por definición, solo puede conocer los paquetes que están en su base de datos; por lo tanto, los instalados por pacman o un asistente de AUR que envuelve pacman/makepkg.

Cualquier cosa que hayas instalado sin pacman, por ejemplo, usando algo como pip o gem, es tu responsabilidad .

Entonces, incluso su ejemplo(sudo pacman -Rsn )no funcionará ya que estos paquetes no están en la base de datos . Hay un proceso descrito en la wiki para ayudar a identificar posibles candidatos, pero aun así deben eliminarse manualmente (es decir, conrm)y con precaución .

La única otra categoría de paquete que podría estar cubierta por este escenario es un paquete AUR que posteriormente se eliminó, y luego sería necesario usar pacman para eliminarlo; esto podría hacerse con # pacman -Rns $(pacman -Qtdq).

5
16.07.2019, 12:51
2 ответа

Да, командаcommand-not-found:

$ command-not-found firefox
The program 'firefox' is currently not installed.  To run 'firefox' please ask your administrator to
install the package 'firefox-esr'
firefox: command not found

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

Вы также можете использовать apt-file search firefoxдля поиска любых соответствующих файлов в пакете.

4
27.01.2020, 20:33

Вы можете использовать сам command-not-found:

command-not-found --ignore-installed ls

сообщит вам, какой пакет содержит команду ls.(--ignore-installedне учитывает установленные пакеты и, в частности, гарантирует, что команда не запустится сразу, если она уже установлена.)

В качестве альтернативы вы можете использоватьapt-file:

apt-file search bin/ls

выведет список всех пакетов, содержащих файл, путь которого содержит «bin/ls». Вы можете отфильтровать это, чтобы соответствовать толькоls:

apt-file search bin/ls | grep bin/ls$
12
27.01.2020, 20:33

Теги

Похожие вопросы