A origem provável do problema, executada como parte de PROMPT_COMMAND
em sua configuração bash:
PWD="${PWD/$HOME/~}"
Pare de reatribuir PWD
a um valor diferente. Isso só vai quebrar as coisas.
Recentemente, não consigo usar cd -
para voltar ao último diretório, às vezes. Dá o erro de -bash: cd: ~/whatever_dir: No such file or directory
. Um olhar mais atento mostra que o erro só acontece se o último diretório contiver o til. Parece que o til não pode ser expandido. "cd ~", no entanto, pode mudar com sucesso para o meu diretório pessoal. Qual é o problema? Eu sei que til não vai se expandir dentro de aspas, mas o último diretório armazenado não está em qotes ao executar cd -
, certo? Além disso, cd -
funcionou para mim anteriormente.
Você tem um bug sério no seu shell que deve reportar. Você disse que, em tal situação, $OLDPWD
mostra ~/whatever_dir
. Não deveria.
Aqui está o que eu tenho aqui:
fge@erwin ~/whatever_dir $ pwd
/home/fge/whatever_dir
fge@erwin ~/whatever_dir $ cd -
/home/fge
fge@erwin ~ $ echo $OLDPWD
/home/fge/whatever_dir
~
é apenas um atalho conveniente usado pelos shells para indicar seu diretório inicial. O meu é /home/fge
. Em qualquer caso, $OLDPWD
deve mostrar um caminho absoluto, NÃO um caminho com ~
, exceto se você tiver um diretório chamado ~
.
Tags bash