У якийсь момент
apt-get install
автозаповнення було порушено
Мені було дуже корисно бачити назву пакетів з Tabнатисканням
Як відремонтувати це автозаповнення?
У якийсь момент
apt-get install
автозаповнення було порушено
Мені було дуже корисно бачити назву пакетів з Tabнатисканням
Як відремонтувати це автозаповнення?
Відповіді:
Як зазначено в коментарях до іншої відповіді, спочатку переконайтеся, що bash-completion
встановлено:
sudo apt-get install bash-completion
і, мабуть, для @diapir це допомогло перевстановити:
sudo apt-get install --reinstall bash-completion
Однак для мене проблема полягала не в тому, що базове завершення не було встановлено або порушено, проблема полягала в тому, що я випадково видалив свій .bashrc
файл. Ви можете отримати новий, скопіювавши його з /etc/skel
:
cp /etc/skel/.bashrc ~/
sudo
по chmod
команді не потрібно, вірно?
/etc/
це 0644/-rw-r--r--
з користувачем: група = root:root
, і при копіюванні в папку користувача, автоматично перейде до користувача: користувач
Введіть таку команду:
sudo -H gedit /etc/bash.bashrc
Шукайте наступні рядки:
# 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
Відмініть декілька рядків, щоб це виглядало так:
# 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
Збережіть, закрийте термінал, а потім знову відкрийте його.
У мене виникло це питання після встановлення 13.04, і саме тому я його вирішую.
Завантажте останню стабільну версію від http://bash-completion.alioth.debian.org/
./configure
make
sudo make install
вставити
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
до ~ / .bashrc
bash-completion
є в пакетах - чи є якась причина, що ви це робили вручну? Пакет повинен зробити саме це :)
sudo apt-get install --reinstall bash-completion
зробив це для мене.
bashrc
файлі.
Зауважте, що вихід цієї команди:
apt-config dump | grep "Dir::Cache"
Повинно бути щось подібне:
Dir::Cache "var/cache/apt";
Dir::Cache::archives "archives/";
Dir::Cache::srcpkgcache "srcpkgcache.bin";
Dir::Cache::pkgcache "pkgcache.bin";
Якщо значення Dir::Cache::pkgcache
порожнього, apt не зможе автоматично заповнити імена пакунків. Погляньте на свої /etc/apt/apt.conf.d/
файли та знайдіть цей ключ, щоб переконатися, що в ньому не встановлено порожній рядок.
grep -r pkgcache /etc/apt/apt.conf.d/
Також погляньте на цю відповідь .