Chciałbym, aby coś podpięło się w błędzie „nie znaleziono polecenia” na bash i zaoferowało przydatną poprawkę.
Na przykład:
grep-C3 error
bash: grep-C3: command not found
Byłoby miło, gdyby powiedział:
Did you mean: grep -C3 error (Y/n)
Widziałem, jak ludzie zawierają typowe literówki w skrypcie .bash_profile, takie jak „alias gerp = grep”, ale wydaje mi się, że ktoś prawdopodobnie napisał ogólne rozszerzenie bash, aby naprawić tego rodzaju rzeczy.
Czy ktoś słyszał o takim przedłużeniu?
unix
bash
spell-check
typing
Brianegge
źródło
źródło
Odpowiedzi:
Nie znam ogólnego przeznaczenia, ale jest jeden dla nazw katalogów:
To jest ze strony podręcznika użytkownika Bash:
Może być możliwe użycie tego do robienia tego, co chcesz, ale kod byłby sporym wyzwaniem. Nawiasem mówiąc, na przykład Ubuntu używa tego do wyświetlania pakietów zawierających polecenie, które nie zostało znalezione wraz z instrukcjami instalacji (apt-get).
źródło
Wygląda na to, że shopt byłby dobrym początkiem.
Wygląda też na to, że zsh ma wbudowaną korektę literówek.
źródło
command-not-found
pakiet powinien zapewnić tę funkcję w ostatnich dystrybucjach.Jeśli nie, możesz wywołać go ręcznie z
command_not_found_handle()
funkcji.Inną alternatywą jest to .
źródło