¿Cómo puedo obtener el comportamiento de usar popd
sin realmente sacar el último directorio de la pila? En otras palabras, quiero volver al último directorio con el que configuré pushd
, pero quiero que permanezca en la parte superior de la pila para que el siguiente popd
me lleve al mismo directorio (que aún estaría en la parte superior del directorio). apilar) de nuevo.
command-line
bash
directory
navigation
Freedom_Ben
fuente
fuente
cd -
funciona, pero solo si no lo hace encd
otro lugar hasta que esté listo para hacerlopopd
. Por lo general, salto a algunos lugares antes de estar listo para regresarRespuestas:
Qué tal si:
cd "$(dirs -l -p | sed -n '2{p;q}')"
fuente
peekd
(tipo de C ++ STL-ish y fácil de recordar para mí), así que solo puedo escribirpeekd
para obtener el comportamiento.alias peekd='cd "$(dirs -l -p | sed -n '\''2{p;q}'\'')"'
cd "$(dirs +1)"
<my directory>
Comienza con una tilde? Mi comentario anterior no tenía la-l
opción de listar el directorio completo en lugar de usar la~
abreviatura. Debería sercd "(dirs -l +1)"
pushd sin argumentos intercambia las dos primeras entradas en la pila, lo que le permite hacer un cd de manera efectiva entre ellas.
Comenzando en d1, ejecutar pushd d2 agrega d1 y d2 a la pila y te deja en d2. Ejecute pushd nuevamente sin argumentos, y estará de vuelta en d1 con d1 y d2 invertidos en la pila.
fuente
Si entendí correctamente, podría hacerlo
pushd .
justo despuéspopd
para que elpop
directorio ed se coloque nuevamente en la parte superior de la pila.fuente