cerca solo i pacchetti installati usando apt


16

Usando aptitudeposso effettuare una ricerca come:

aptitude search '~i bash'

Questa sembra essere una regex attitudinale specifica. È possibile fare la stessa cosa usando apto apt-cachesenza comandi aggiuntivi?

apt search '~i bash'

non funziona.


3
No, le funzionalità di ricerca specifiche di aptitude non sono state implementate in apt.
Giordania,

Ci sono altre funzioni in apt che danno lo stesso risultato?
Exostor

4
dpkg -l|grep bash
Ipor Sircer,

dpkg è un altro comando
Exostor

L'interfaccia utente della gestione dei pacchetti Debian è esemplare.
Rolf,

Risposte:


18

Puoi provare:

apt list --installed bash

Questo tenterà di elencare i messaggi di posta elettronica installati packagecon il nomebash

Tuttavia, se si desidera cercare un determinato file, utilizzare apt-file

Il seguente comando elencherà tutti i pacchetti che hanno una stringa bashnel loro nome:

apt list -a --installed bash

Come suggerito da @Exostor apt list -a --installed bashnon è sempre il caso di elencare quei pacchetti che iniziano con una stringa particolare, invece usa:

apt list -a --installed bash*

Se il globbing è ciò che stai cercando, ti preghiamo di votare il commento @Exostor di seguito.


2
Ah! ma questo non lo farà, perché non elencherà bash-builtins, bash-doc ecc. Ma apt list --installed bash*è abbastanza vicino per me.
Exostor

Invece di globbing, -apotrebbe essere usato per elencare tutti i pacchetti corrispondenti
VanagaS

2
Non funziona per me. Ubuntu 16.04-machine: apt list -a --installed bashelenca bash / xenial-updates e bash / xenial ma apt list --installed bash*elenca bash, bash-completamento e bash-doc, che sono i tre pacchetti bash installati sulla macchina.
Exostor

@Exostor cosa fa effettivamente -a?
ysth

@ysth Elenca tutte le versioni del pacchetto. Senza -a elenca solo l'ultima versione.
Exostor,

6

dpkg-query --list | grep '^.i\s*PKG'

o:

dpkg-query --list PKG\* | grep '^.i'

dove PKGè il nome del pacchetto desiderato / a reg-ex.


2

Se qualcun altro si sta chiedendo come procedere, utilizzo il seguente metodo.

apt list --installed | grep [XYZ]

Questo metodo mostra anche diversi pacchetti installati contenenti la stringa che stavi cercando. Ad esempio, se sto cercando vlc, mi vengono mostrati molti altri pacchetti che hanno anche "vlc" nel loro nome. Ecco input e output:

apt list --installed | grep vlc

WARNING: apt.divert does not have a stable CLI interface. Use with caution in scripts.

browser-plugin-vlc/stable,now 2.0.6-4 amd64 [installed]
libvlc-bin/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
libvlc5/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
libvlccore8/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
phonon4qt5-backend-vlc/stable,now 0.9.0-2 amd64 [installed,automatic]
vlc/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-bin/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-data/stable,stable,stable,stable,now 2.2.7-1~deb9u1 all [installed]
vlc-l10n/stable,stable,stable,stable,now 2.2.7-1~deb9u1 all [installed]
vlc-plugin-base/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-notify/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-qt/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-samba/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-skins2/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-video-output/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-video-splitter/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-visualization/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]

Se risulta che il pacchetto non è installato, il comando verrà semplicemente chiuso.


Di tutto quanto sopra è l'unica cosa che ha funzionato per me su Mint 18.3
JoeManiaci,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.