Aqui estão algumas opções, elas listarão todos os arquivos instalados por um pacote:
Listando todos os arquivos incluídos em um pacote
-
Para pacotes instalados
dpkg -L ncurses-term
-
Para todos os pacotes, instalados ou não
apt-file -F list ncurses-term
Os turnos
-F
da correspondência de padrões para que apenas os pacotes com as correspondências de nome exato sejam retornados. Talvez seja necessário instalarapt-file
comsudo apt-get install apt-file
e, em seguida, atualizar seu banco de dados comsudo apt-file update
.
B. Listando apenas arquivos executáveis incluídos em um pacote
-
Para pacotes instalados
Basta instalar
dlocate
(sudo apt-get dlocate
) e executar:dlocate -lsbin ncurses-term
Como explicado em
man dlocate
:-lsbin Lista caminho completo / nomes de arquivos de arquivos executáveis (se houver) no pacote
Se você não quiser instalar pacotes adicionais, você pode fazer isso manualmente. Apenas colete a lista de arquivos e encontre qualquer um deles que tenha o bit executável definido:
apt-file -F list ncurses-term | cut -d ' ' -f 2 | while read file; do [[ -x $file && -f $file ]] && echo "$file"; done
O pequeno scriptlet acima imprimirá apenas o caminho (
cut -d ' ' -f 2
) e passará através de um loopwhile
que verifica se o arquivo é executável (-x $file
) e se for um arquivo regular, nenhum diretório ou symlinks (-f $file
) e imprime seu nome somente se passar nos dois testes. -
Para todos os pacotes, instalados ou não
Não há como saber apenas os executáveis incluídos em um pacote desinstalado. No entanto, como a maioria dos executáveis está instalada nos diretórios
bin
, é possível obter a maioria deles analisando a saída:apt-file -F list ncurses-term | grep -Ew "bin|sbin"
A opção
-w
corresponde a palavras inteiras, portanto você não instala as coisas, por exemplo,trashbin
ou qualquer outra coisa.
NOTA : Nenhum dos comandos acima produzirá qualquer saída para ncurses-term
, mas isso ocorre porque este pacote não instala arquivos executáveis. Os comandos funcionam, no entanto, tente com um pacote diferente.