Seu processo (chamado $$
) tem um "diretório atual", ~/Downloads
.
Quando você ./cd-backward
, esse script Bash é executado em seu próprio processo, que possui seu próprio "Diretório Atual", que inicia como ~/Downloads
.
O cd ..
afeta o "diretório atual" do processo ./cd-backward
, alterando-o para ~
, mas NÃO afetando o "diretório atual" do seu processo original.
./cd-backward
termina, seu processo sai e o cd ..
é esquecido.
Aqui estão duas maneiras de afetar o meu próprio "diretório atual", mantido em meu '~ / .bashrc':
Primeiro, alguns alias
es:
alias ..='cd ..'
alias ...='cd .. ; cd ..'
Veja como eu mantenho meu diretório atual no título da minha janela (através da interceptação de cd
):
# from the "xttitle(1)" man page - put info in window title
update_title()
{
[[ $TERM = xterm ]] || [[ $TERM = xterm-color ]] && xttitle "[$$] ${USER}@${HOSTNAME}:$PWD"
}
cd()
{
[[ -z "$*" ]] && builtin cd $HOME
[[ -n "$*" ]] && builtin cd "$*"
update_title
}