Jak mogę uzyskać sposób korzystania popd
bez faktycznego usuwania ostatniego katalogu ze stosu? Innymi słowy, chcę wrócić do ostatniego katalogu, który ustawiłem pushd
, ale chcę, aby pozostał na górze stosu, więc następny popd
zabierze mnie do tego samego katalogu (który wciąż będzie na górze stos) ponownie.
command-line
bash
directory
navigation
Freedom_Ben
źródło
źródło
cd -
działa, ale tylko wtedy, gdy nie będzieszcd
nigdzie indziej, dopóki nie będziesz gotowypopd
. ZwykleOdpowiedzi:
Co powiesz na:
cd "$(dirs -l -p | sed -n '2{p;q}')"
źródło
peekd
(coś w stylu C ++ STL i łatwe do zapamiętania), więc mogę po prostu pisać,peekd
aby uzyskać zachowanie.alias peekd='cd "$(dirs -l -p | sed -n '\''2{p;q}'\'')"'
cd "$(dirs +1)"
<my directory>
zaczyna się tyldą? W moim powyższym komentarzu brakowało-l
opcji wyświetlenia pełnego katalogu zamiast używania~
skrótu. Powinno byćcd "(dirs -l +1)"
pushd bez argumentów zamienia dwa górne wpisy na stosie, pozwalając na efektywne cd między nimi.
Zaczynając w d1, wykonaj pushd d2 dodaje d1 i d2 do stosu i pozostawia cię w d2. Wykonaj ponownie pushd bez argumentów, a wrócisz do d1 z odwróconymi stosami d1 i d2 na stosie.
źródło
Jeśli dobrze zrozumiałem, możesz
pushd .
zaraz po tym,popd
abypop
katalog ed został ponownie umieszczony na górze stosu.źródło