Como implementar a sugestão de instalação de pacotes no Debian?

17

Eu notei que, enquanto no Ubuntu, digito o seguinte:

mc

e não está instalado, recebo a mensagem abaixo:

The program 'mc' is currently not installed. You can install it by typing: sudo apt-get install mc

No entanto, no Debian, isso não está disponível. Ele apenas fornece uma mensagem "-bash: / usr / bin / mc: Nenhum arquivo ou diretório". Como posso implementar a mesma funcionalidade na linha de comando do bash no Debian? Sim, eu sei que se for sugestão de pacote que eu quero, eu posso simplesmente fazer uma pesquisa de regex usando pesquisa do apt-cache . No entanto, eu estava esperando a sugestão mais simples imediatamente ao digitar o nome do programa.

De acordo com as discussões, a funcionalidade é fornecida pelo pacote comando-não-encontrado . No entanto, mesmo depois de instalá-lo, e também instalar o pacote bash-completion, isso não está disponível no shell bash do Debian.

    
por Joel G Mathew 10.03.2013 / 11:15

2 respostas

18

A razão pela qual a instalação do command-not-found não começou a fornecer sugestões para pacotes não instalados foi a falta de uma pequena notificação do dpkg como parte da instalação.

Um deve executar o comando update-command-not-found imediatamente após executar apt-get install command-not-found . Na verdade, o dpkg solicita a execução deste comando.

    
por 06.05.2013 / 16:14
9

O pacote debian parece estar incompleto. O README diz que você deve procurar /etc/bash_command_not_found no seu .bashrc . Estranhamente esse arquivo não está incluído no pacote.

O debian command-not-found package é baseado no pacote ubuntu . O pacote ubuntu parece ser mais completo a esse respeito.

Conteúdo da versão do ubuntu de bash_command_not_found :

command_not_found_handle() {
  if  [ -x /usr/lib/command-not-found ]; then
     /usr/lib/command-not-found -- "$1" 
     return $?
  else
     return 127
  fi        
}

Adicione essas linhas ao seu ~/.bashrc (ou /etc/bash.bashrc ) e o recurso command-not-found deve funcionar.

    
por 10.03.2013 / 13:16