Pourquoi Ubuntu prend-il autant de temps à dire "commande introuvable"

23

Pour une raison quelconque, avec mon installation, Ubuntu peut prendre plusieurs secondes pour répondre avec "commande not found" lorsque je tape accidentellement une commande. Pourquoi cela prend-il si longtemps? Y a-t-il un moyen de raccourcir le délai d'attente?

J'ai 13 répertoires dans mon PATH, mais malgré tout (la plupart d’entre eux ne contiennent que quelques fichiers), il ne faut pas attendre plusieurs secondes pour chercher une commande dans 13 répertoires?

    
posée mltsy 27.10.2011 - 18:10
la source

2 réponses

33

Le shell fait plus que regarder dans $PATH . Si aucune commande n'est trouvée, la fonction bash command_not_found_handle est exécutée et appelle à son tour le script python /usr/lib/command-not-found . Cela recherche dans la liste des packages les programmes à installer pour que la commande fonctionne. Dans le cas d'une faute de frappe que vous savez résoudre, appuyez simplement sur Ctrl + C pour abandonner le processus de recherche.

Exemple de message utile pour une faute de frappe:

$ aptget update
No command 'aptget' found, did you mean:
 Command 'apt-get' from package 'apt' (main)
aptget: command not found

Exemple de message utile pour un paquet manquant:

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

Voir aussi la raison d’être de ce problème, lien

    
réponse donnée Lekensteyn 27.10.2011 - 18:23
la source
8

C'est à cause d'un paquet nommé "command-not-found". Vous pouvez le désinstaller pour raccourcir le temps de réponse.

    
réponse donnée cartoonist 27.10.2011 - 18:17
la source

Lire d'autres questions sur les étiquettes