W pewnym momencie
apt-get install
autouzupełnianie zostało zepsute
Bardzo mi się przydało zobaczyć nazwę paczki za pomocą Tabprasy
Jak naprawić to autouzupełnianie?
W pewnym momencie
apt-get install
autouzupełnianie zostało zepsute
Bardzo mi się przydało zobaczyć nazwę paczki za pomocą Tabprasy
Jak naprawić to autouzupełnianie?
Odpowiedzi:
Jak stwierdzono w komentarzach do drugiej odpowiedzi, najpierw upewnij się, że bash-completion
jest zainstalowany:
sudo apt-get install bash-completion
i najwyraźniej dla @diapir pomógł go ponownie zainstalować:
sudo apt-get install --reinstall bash-completion
Jednak dla mnie problemem nie było to, że uzupełnianie basha nie zostało zainstalowane lub zostało zepsute, problem polegał na tym, że przypadkowo usunąłem .bashrc
plik. Możesz uzyskać nowy, kopiując go z /etc/skel
:
cp /etc/skel/.bashrc ~/
sudo
na chmod
polecenia jest niepotrzebne, choć, tak?
/etc/
to 0644/-rw-r--r--
z użytkownikiem: group = root:root
, a gdy skopiowane do katalogu użytkownika, automatycznie przejdzie do użytkownika: użytkownika
Wpisz następujące polecenie:
sudo -H gedit /etc/bash.bashrc
Poszukaj tych linii:
# enable bash completion in interactive shells
# if ! shopt -oq posix; then
# if [ -f /usr/share/bash-completion/bash_completion ]; then
# . /usr/share/bash-completion/bash_completion
# elif [ -f /etc/bash_completion ]; then
# . /etc/bash_completion
# fi
# fi
Usuń komentarz z niektórych wierszy, aby wyglądało to tak:
# enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
Zapisz, zamknij terminal, a następnie otwórz go ponownie.
Mam ten problem po zainstalowaniu 13.04 i tak go rozwiązuję.
Pobierz najnowszą stabilną wersję z http://bash-completion.alioth.debian.org/
./configure
make
sudo make install
wstawić
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
do ~ / .bashrc
bash-completion
jest w paczkach - czy jest jakiś powód, dla którego zrobiłeś to ręcznie? Pakiet powinien zrobić prawie dokładnie to :)
sudo apt-get install --reinstall bash-completion
zrobił to dla mnie.
bashrc
pliku.
Zauważ, że dane wyjściowe tego polecenia:
apt-config dump | grep "Dir::Cache"
Powinno być coś takiego:
Dir::Cache "var/cache/apt";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Jeśli wartość parametru Dir::Cache::pkgcache
jest pusta, apt nie będzie w stanie automatycznie uzupełnić nazw pakietów. Spójrz na swoje /etc/apt/apt.conf.d/
pliki i wyszukaj ten klucz, aby upewnić się, że nie jest ustawiony pusty ciąg.
grep -r pkgcache /etc/apt/apt.conf.d/
Zobacz także tę odpowiedź .