Jak włączyć autouzupełnianie w terminalu

to typ jest przydatny dla wszystkich osób, które często (codziennie) używają terminal lub konsola w systemach GNU / Linux.

Przed rozpoczęciem

Jeśli nie mamy zainstalowanego pakietu uzupełniającego bash, instalujemy go:

aptitude zainstaluj uzupełnienie bash

Włącz autouzupełnianie na TTY dla wszystkich użytkowników

Otwieramy / etc / profile

nano / etc / profile

Szukamy w / etc / profile następujących wierszy ...

# włącz uzupełnianie basha w powłokach interaktywnych
#if [-f / etc / bash_completion] &&! shopt -oq posix; następnie
#. / etc / bash_completion
#fi

I zastępujemy:

if ["$ BASH"]; następnie
       jeśli [-f / etc / bash_completion] &&! shopt -oq posix; następnie
            . / etc / bash_completion
       fi
fi

Ten ostatni aktywuje bash_completion dla wszystkich użytkowników, w tym roota. Ale aktywuje go tylko na TTY, a nie na emulatorach terminala.

Zresetowaliśmy TTY i to wszystko.

Jak widać, dodaliśmy if do oryginalnego pliku, co potwierdza, że ​​bash_completion działa tylko wtedy, gdy jesteśmy w Bash. Bez tego warunku GDM zwróci nam wspomniany wcześniej błąd, ponieważ GDM wywoływałby bash_completion iz jakiegoś powodu kolidowałby z xsession.

Włącz automatyczne uzupełnianie w emulatorach terminali dla wszystkich użytkowników

Otwieramy /etc/bash.bashrc

# nano /etc/bash.bashrc

Szukamy w /etc/bash.bashrc następujących wierszy ...

# włącz uzupełnianie basha w powłokach interaktywnych
#if [-f / etc / bash_completion] &&! shopt -oq posix; następnie
#. / etc / bash_completion
#fi

... i usuwamy znak „#” (odkomentowujemy je), wyglądający tak:

# włącz uzupełnianie basha w powłokach interaktywnych
jeśli [-f / etc / bash_completion] &&! shopt -oq posix; następnie
    . / etc / bash_completion
fi

Ten ostatni aktywuje bash_completion dla wszystkich użytkowników, w tym roota. Ale włączy go tylko na emulatorach terminali, a nie na TTY.

Zrestartujemy dowolny terminal i zmiany zaczną obowiązywać.

Włącz autouzupełnianie w emulatorach terminali tylko dla jednego użytkownika

Musimy stworzyć (lub edytować, jeśli istnieje) plik ~ / .bashrc.

nano ~ / .bashrc

Dodajemy (lub szukamy, jeśli nie istnieją, ale komentujemy, tak jak jest to zrobione w /etc/bash.bashrc), aby wyglądało to tak:

# włącz uzupełnianie basha w powłokach interaktywnych
jeśli [-f / etc / bash_completion] &&! shopt -oq posix; następnie
    . / etc / bash_completion
fi

- Jeśli plik go tworzymy, po prostu dodajemy te linie.
- Jeśli te wiersze istnieją, ale ich nie ma, dodajemy je na końcu pliku.
- Jeśli istnieje, a te wiersze są, po prostu je odkomentowujemy.

Ponownie uruchamiamy konsolę i zmiany zaczną obowiązywać.

W razie potrzeby włącz autouzupełnianie

Musimy tylko uruchomić bash_completion w momencie, gdy chcemy go użyć. Zostanie dezaktywowany po zakończeniu sesji w terminalu (za pomocą polecenia exit) lub zamknięciu terminala, którego używamy, jeśli jesteśmy w środowisku graficznym. Aby go uruchomić, kiedy tylko chcemy, robimy:

. / etc / bash_completion
Dzięki Carlos Fioriti!

źródło: notebook 98