Meine Bash-Shell wechselt nicht länger das Verzeichnis mit CD. Ich bemerkte es früher bei der Arbeit und stellte fest, dass alle neuen Shells, die ich geöffnet hatte (Terminal oder xterm usw.), im Home-Verzeichnis stecken blieben und nicht raus konnten (bereits geöffnete Terminals funktionierten weiterhin einwandfrei).
[~]$ 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'
Ich dachte, es muss etwas seltsam sein, dass ich keine Zeit hatte, mich mit so etwas wie einem Handler aus dem Speicher zu befassen (nachdem ich überprüft hatte, dass die CD keinen Alias hatte und die eingebaute Version verwendete).
Also habe ich (ja, ich weiß) die Maschine neu gestartet.
Fresh Boot, genau das gleiche Problem.
CSH hingegen funktioniert gut, also gleich nach dem obigen Snippet:
[~]$ csh
[~]$ cd /
[/]$ pwd
/
[/]$ cd ~/Documents/
[~/Documents]$ pwd
/home/sys/dave/Documents
[~/Documents]$
Ich habe in den letzten Tagen nichts Neues installiert oder Updates durchgeführt und es hat bis zum späten Abend einwandfrei funktioniert.
Ideen / Hilfe / HILFE sehr geschätzt!
** UPDATE **
Beim Stöbern habe ich diese Zeile in .bashrc gefunden
export PROMPT_COMMAND="cd"
Wenn ich PROMPT_COMMAND deaktiviere, funktioniert alles wie gewohnt.
Aber ... WTF. Ich habe diese Zeile nicht in die .bashrc eingefügt und bis heute Abend hat alles einwandfrei funktioniert. Sollte ich es einfach auskommentieren, manuell deaktivieren oder einfach den Computer als Hexe brennen?
Antworten:
Das Setzen von
PROMPT_COMMAND
aufcd
ist ein ziemlich verbreiteter Streich, wenn Sie ihn nicht gesetzt haben und Sie der einzige Benutzer sind, dann sind Sie ja kompromittiert worden.Wenn Freunde Zugriff haben, ist dies ein Streich, den ich schon oft gesehen habe. Sprechen Sie mit ihnen.
quelle