Come rimuovo la funzione "intendevi ..." nella shell?


19

Quando non riesco a digitare correttamente un comando, ad esempio:

luca@mostro:~$ sido
No command 'sido' found, did you mean:
 Command 'sudo' from package 'sudo' (main)
 Command 'sudo' from package 'sudo-ldap' (universe)
 Command 'sid' from package 'tendra' (universe)
sido: command not found

L'interprete dei comandi prova a indovinare quale programma volevo eseguire. Questo è molto fastidioso per me (lo associo al comportamento di Google).

È possibile rimuovere questa funzione? E come?

Immaginai che fosse installato nel mio locale ~/.bashrc, ma il controllo rapido fallì miseramente ...

Risposte:


16
sudo apt-get remove command-not-found
sudo mv /usr/share/command-not-found /usr/share/command-not-found.bak

È necessario riavviare la shell per rendere effettive le modifiche.


2
Non spostare le cose /usrche appartengono ai pacchetti. Nel caso di /usr/share/command-not-found, quella directory appartiene al command-not-found-datapacchetto. Ora il tuo gestore pacchetti sarà confuso.
ruief

9
sudo apt-get remove command-not-found command-not-found-data

Contrariamente alla altra risposta, si dovrebbe non spostare manualmente le cose sotto /usra meno che non si sta cercando di defenestrare il gestore di pacchetti.


3

Le altre risposte qui assumono entrambe il root e che si desidera rimuoverlo globalmente per il sistema. Se vuoi solo disabilitarlo per un singolo utente (ad es. Il tuo account), puoi semplicemente fare:

unset command_not_found_handle

nella riga di comando per la shell corrente o nel loro .bashrc

La funzionalità è in genere abilitata a livello globale definendo command_not_found_handlein /etc/bash.bashrc, quindi potrebbe anche essere disabilitata lì per impostazione predefinita, lasciando comunque il pacchetto disponibile per un utente esperto per definire la funzione e abilitare la funzione nel proprio account.

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.