Tente adicionar isso ao seu .bash_profile:
# Taken from /usr/share/bash-completion/bash_completion on my
# Ubuntu 16.04 system, substituting "pushd" for "cd":
if shopt -q cdable_vars; then
complete -v -F _cd -o nospace pushd
else
complete -F _cd -o nospace pushd
fi
Funciona para mim. Observe que ele é recuado, pois é "protegido" por um if [ -n "$PS1" ]
, para garantir que ele não seja executado em uma sessão não interativa. (Meu .bashrc
run .bash_profile
para lidar com algumas formas com que os shells são iniciados, como por meio de ESC-x shell
no GNU Emacs, que lê apenas .bashrc
.)