Bash No Longer Changes Directory

13

Meu bash shell não mudará mais o diretório com o cd. Eu notei isso mais cedo quando estava trabalhando e descobri que quaisquer novos shells que eu abrisse (terminal ou xterm etc) estariam presos no diretório home e não poderiam sair (os terminais já abertos continuavam funcionando bem).

[~]$ pwd
/home/sys/dave
[~]$ cd /
[~]$ cd Documents/
[~]$ pwd
/home/sys/dave
[~]$ type cd
cd is a shell builtin
[~]$ alias
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

Eu pensei que deveria ser alguma estranheza com a qual eu não tive tempo de lidar, como um manipulador sem memória (tendo verificado que o CD não estava com um alias e usando a versão integrada).

Então eu (sim, eu sei) reiniciei a máquina.

inicialização fresca, exatamente o mesmo problema.

Por outro lado, o CSH funciona bem, logo após o snippet acima:

[~]$ csh
[~]$ cd /
[/]$ pwd
/
[/]$ cd ~/Documents/
[~/Documents]$ pwd
/home/sys/dave/Documents
[~/Documents]$ 

Eu não instalei nada novo nem fiz nenhuma atualização nos últimos dias e ele estava funcionando bem até tarde da noite.

Idéias / assistência / AJUDA muito apreciada!

** ATUALIZAÇÃO **

Então cavando por aí, encontrei esta linha em .bashrc

export PROMPT_COMMAND="cd"

Se eu desmarcar PROMPT_COMMAND, tudo funcionará normalmente.

Mas ... WTF. Eu não coloquei essa linha no .bashrc e tudo estava funcionando perfeitamente até hoje à noite. Devo apenas comentá-lo, desarquivá-lo manualmente ou apenas queimar o computador como uma bruxa?

    
por Dave C 05.03.2013 / 23:53

1 resposta

19

Definir PROMPT_COMMAND to cd é uma brincadeira muito comum, se você não configurou e é o único usuário, então sim, você foi comprometido.

Se os amigos tiverem acesso, esta é uma brincadeira que já vi várias vezes, fale com eles.

    
por 06.03.2013 / 00:18

Tags