Cómo usar los comandos Pushd y Popd en Linux

27 feb 2021 3 min di lettura
Cómo usar los comandos Pushd y Popd en Linux
Indice dei contenuti

Introducción

pushd y popd son comandos que le permiten trabajar con la pila de directorios y cambiar el directorio de trabajo actual en Linux y otros sistemas operativos similares a Unix.

En este tutorial, le mostraremos cómo usar los comandos pushd y popd para navegar por el árbol de directorios del sistema.

Pila de directorio

La pila de directorios es una lista de directorios que se ha explorado previamente. El contenido de la pila de directorios se puede ver usando el comando dirs. Los directorios se agregan a la pila cuando cambia a un directorio usando el comando pushd y se eliminan con el comando popd.

El directorio de trabajo actual siempre está en la parte superior de la pila de directorios. El directorio de trabajo actual es el directorio (carpeta) donde el usuario está trabajando actualmente. Siempre que interactúa con la línea de comandos, está trabajando dentro de un directorio.

El comando pwd le permite averiguar en qué directorio se encuentra actualmente.

Mientras explora el sistema de archivos, use la tecla Tab para completar automáticamente los nombres de los directorios. Agregar una barra diagonal al nombre del directorio es opcional.

pushd, popd y dirs son elementos integrados de shell y su comportamiento puede diferir ligeramente de un shell a otro.

Comando pushd

La sintaxis del comando pushd es la siguiente:

pushd [OPTIONS] [DIRECTORY]

Por ejemplo, para guardar el directorio actual en la parte superior de la pila de directorios y cambiarlo a /var /www, escriba:

pushd /var/www

Si tiene éxito, el comando anterior imprime la pila de directorios. ~ es el directorio donde ejecutamos el comando pushd. El símbolo de tilde ~ significa "directorio de inicio".

Debería recibir un mensaje de salida similar al siguiente:

/var/www ~

pushd primero guarda el directorio de trabajo actual en la parte superior de la pila y luego cambia al directorio especificado. Dado que el directorio actual siempre debe estar en la parte superior de la pila, una vez cambiado, el nuevo directorio actual pasa a la parte superior de la pila, pero no se guarda en la pila. Para guardarlo, debe usar pushd desde la ubicación actual. Si usa cd para cambiar a otro directorio, la parte superior de la pila se perderá,

Agreguemos otro directorio a la pila:

pushd /opt

Debería recibir un mensaje de salida similar al siguiente:

/opt /var/www ~

Para evitar cambiar el cambio de directorio, use la opción -n. Por ejemplo, para agregar el directorio /usr /local a la pila pero sin cambiar el directorio actual, debe escribir:

pushd -n /usr/local

Dado que el directorio actual (que siempre está en la parte superior) no se cambia, el directorio /usr /local se agrega como el segundo desde la parte superior de la pila.

Debería recibir un mensaje de salida similar al siguiente:

/opt /usr/local /var/www ~

pushd acepta dos opciones, + N y -N que le permiten navegar al directorio de pila Nth. La opción + N cambia a N-ésimo elementos de la lista de pilas contando de izquierda a derecha comenzando en cero. Cuando se usa la opción -N, la dirección de conteo es de derecha a izquierda.

Para ilustrar mejor las opciones, imprimamos la pila de directorios actual:

dirs -l -v

La salida mostrará una lista indexada de la pila de directorios:

 0 /opt
 1 /usr/local
 2 /var/www
 3 /home/noviello

Si desea cambiar al directorio /var /www y llevarlo al principio de la pila, utilizará una de las siguientes opciones.

Al contar de arriba a abajo (o de izquierda a derecha), el índice del directorio es 2.

pushd +2

Al contar de abajo hacia arriba, el índice del directorio /var /www es 1.

pushd -1

Cuando se usa sin argumentos, pushd alternará entre los dos primeros directorios y hará que el nuevo directorio raíz sea el actual. Es lo mismo que cuando se usa el comando cd -.

Comando popd

El comando popd tiene la siguiente forma:

popd [OPTIONS]

Cuando se usa sin argumentos, popd elimina el directorio raíz de la pila y cambia al nuevo directorio raíz.

Por ejemplo, si tenemos la siguiente pila de directorios:

/opt /usr/local /var/www /etc/nginx ~

Si ejecuta el comando popd, eliminará /opt de la pila e irá al directorio /usr /local:

popd

La salida mostrará la nueva pila de directorios:

/usr/local /var/www /etc/nginx ~

La opción -n descarta el cambio de directorio predeterminado y elimina el segundo elemento de la pila:

popd -n

Debería recibir un mensaje de salida similar al siguiente:

/usr/local /etc/nginx ~

Al igual que el comando pushd, popd también acepta las opciones + N y -N que se pueden usar para eliminar los directorios Nth de la pila.

popd +1

Debería recibir un mensaje de salida similar al siguiente:

/usr/local ~

Conclusión

En este tutorial hemos visto cómo usar los comandos Pushd y Popd.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.