Isso tem a ver com a conclusão programável. A ideia é que, excluindo as coisas com as quais um programa não pode lidar, você estará tornando a vida mais fácil para os usuários.
Na prática, no entanto, muitas vezes descubro que, ao excluir as coisas da conclusão, você inevitavelmente terá algo que a conclusão exclui, mas que você realmente quer usar. Nesse ponto, a conclusão programável é um fardo em vez de uma ajuda.
Existem três formas de resolver este problema:
- desinstale a conclusão programável. É um recurso opcional que você não tem para usar se não quiser. Você pode fazer isso por meio de
apt-get remove bash-completion
- se você não quiser (ou não puder) remover o bash-completion por qualquer motivo, você pode executar
complete -r
, o que remove todas as regras de conclusão novamente. Se você fizer isso de algo como.bashrc
, o efeito será o mesmo da primeira opção, exceto que há uma pequena perda de desempenho na inicialização do bash, já que as regras são processadas e, em seguida, removidas novamente. - se você quiser apenas forçar ocasionalmente o bash a preencher um nome de arquivo, poderá usar
alt
+/
em vez detab
para forçar o bash a realizar a conclusão do nome do arquivo.