[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Salvar wd da ultima sessao do bash
From: |
Arkanon |
Subject: |
Salvar wd da ultima sessao do bash |
Date: |
Fri, 19 Mar 2010 11:21:45 -0300 |
Mas bash, galera! (sim, eu sou do sul :-p)
Eu tenho a impressao (impressao!) que em algum shell que eu usei em
algum momento do passado havia uma caracteristica habilitada que fazia
ele guardar em algum lugar o ultimo diretorio de trabalho. Como
resultado, sempre que abriamos uma nova sessao, automaticamente
caĆamos no ultimo diretorio "entrado" pelas varias sessoes abertas.
Talvez fosse no csh do FreeBSD, nao sei :-p
Enfim. Alguem ja viu ou ouviu falar disso?
De qualquer forma, resolvi implementar essa caracteristica, e cheguei
ao seguinte resultado;
Em algum lugar de algum dos scripts de inicializacao (global ou
pessoal) do bash colocamos algo como:
--
fun_cd()
{
builtin cd "${1:-$HOME}" && pwd >| ~/.lwd
}
alias cd="fun_cd"
[ -e ~/.lwd ] && cd `cat ~/.lwd`
--
Ou seja: transformamos o comando nativo 'cd' num alias para uma funcao
'fun_cd', a qual executa o comando nativo 'cd' passando o diretorio de
parametro (ou usa o diretorio $HOME como default). Se a entrada no
diretorio foi feita com sucesso, armazena esse diretorio no arquivo
~/.lwd (last working directory ;-)
A cada nova sessao de login no bash, eh testado se existe o arquivo
~/.lwd e, se for o caso, eh dado um cd para la.
Alguem conhece uma maneira mais "nativa" de obter essa caracteristica?
[]
--
(o_ ------------------ __o
//\ address@hidden _`\<,
V_/_ --- www.lsd.org.br (_)/(_)
---------------------------------
- Salvar wd da ultima sessao do bash,
Arkanon <=