Como posso obter o comportamento de usar popd
sem realmente remover o último diretório da pilha? Em outras palavras, desejo navegar de volta para o último diretório que defini pushd
, mas quero que ele permaneça no topo da pilha para que o próximo popd
me leve ao mesmo diretório (que ainda estaria no topo do diretório). pilha) novamente.
command-line
bash
directory
navigation
Freedom_Ben
fonte
fonte
cd -
funciona, mas somente se você não estiver emcd
nenhum outro lugar até estar prontopopd
. Eu costumo pular a alguns lugares antes que eu estou pronto para voltarRespostas:
E se:
cd "$(dirs -l -p | sed -n '2{p;q}')"
fonte
peekd
(tipo de C ++ STL-ish e fácil de lembrar), para que eu possa digitar apenaspeekd
para obter o comportamento.alias peekd='cd "$(dirs -l -p | sed -n '\''2{p;q}'\'')"'
cd "$(dirs +1)"
<my directory>
Começa com um til? Meu comentário acima estava faltando a-l
opção de listar o diretório completo em vez de usar a~
abreviação. Deveria sercd "(dirs -l +1)"
O pushd sem argumentos troca as duas principais entradas da pilha, permitindo que você efetivamente entre e entre em um CD.
Começando em d1, execute pushd d2 adiciona d1 e d2 à pilha e deixa você em d2. Execute pushd novamente sem argumentos, e você estará de volta em d1 com d1 e d2 invertidos na pilha.
fonte
Se eu entendi corretamente, você poderia
pushd .
logo depois,popd
para que opop
diretório ed seja colocado novamente no topo da pilha.fonte