En informática, pushdy popdson un par de comandos que permiten a los usuarios cambiar rápidamente entre el directorio actual y el anterior al utilizar la línea de comandos. Cuando se los llama, utilizan una pila de directorios para guardar y recuperar secuencialmente los directorios visitados por el usuario. [1] [2]
Están ampliamente disponibles como comandos integrados en muchos intérpretes de línea de comandos , como 4DOS , Bash , [3] C shell , tcsh , Hamilton C shell , KornShell , cmd.exe y PowerShell , y para varios sistemas operativos, incluidos Windows y sistemas similares a Unix .
Descripción general

La pila de directorios es la base de las funciones de estos dos comandos. Es una matriz de rutas almacenadas como una variable de entorno en la CLI, que se puede ver mediante el comando dirsen Unix o Get-Location -stacken PowerShell. El directorio de trabajo actual siempre se encuentra en la parte superior de la pila.
El pushdcomando ('push directory') guarda el directorio de trabajo actual en la pila y luego cambia el directorio de trabajo a la nueva ruta ingresada por el usuario. Si pushdno se proporciona un argumento de ruta , cambia al siguiente directorio desde la parte superior de la pila, [ aclaración necesaria ] que se puede usar para alternar entre dos directorios.
El popdcomando elimina (o 'hace estallar', en la analogía de la pila) la entrada de la ruta actual de la pila y regresa a la ruta en la parte superior de la pila como el nuevo directorio de trabajo. [4] [5]
El primer shell de Unix que implementó una pila de directorios fue el shell C de Bill Joy . [ cita requerida ] La sintaxis para insertar y extraer directorios es esencialmente la misma que la que se utiliza ahora. [6] [7]
Ambos comandos están disponibles en FreeCOM, la interfaz de línea de comandos de FreeDOS . [8]
En Windows PowerShell , pushd es un alias de comando predefinido para el Push-Location cmdlet y popd es un alias de comando predefinido para el Pop-Locationcmdlet. Ambos cumplen básicamente la misma función que los comandos pushdy popd.
Ejemplos
Similar a Unix
[usuario@servidor /usr/puertos] $ pushd /etc
/etc /usr/puertos
[usuario@servidor /etc] $ popd
/usr/puertos
[usuario@servidor /usr/puertos] $
Microsoft Windows y ReactOS
C:\Usuarios\root> pushd C:\Usuarios
C:\Usuarios> popd
C:\Usuarios\root>
Archivo por lotes CMD
@ echo off
rem Este archivo por lotes elimina todos los archivos .txt en un directorio especificado
pushd %1
del *.txt
popd
echo Todos los archivos de texto eliminados en el directorio
%1Sintaxis
empujado
pushd [ruta | ..]
Argumentos:
pathEste argumento opcional de la línea de comandos especifica el directorio que se convertirá en el directorio actual. Sipathse omite, se utiliza la ruta que se encuentra en la parte superior de la pila de directorios, lo que tiene el efecto de alternar entre dos directorios.
pop
pop
Véase también
Referencias
- ^ Pushd - cambiar directorio/carpeta - CMD de Windows - SS64.com
- ^ Popd - CMD de Windows - SS64.com
- ^ Manual de referencia de Bash: Integraciones de la pila de directorios
- ^ Artículo de Microsoft TechNet Pushd
- ^ Artículo de Microsoft TechNet Popd
- ^ Capítulo 14 – 14.6 Los comandos pushd y popd de los shells
- ^ man tcsh "TCSH(1)". Archivado desde el original el 10 de marzo de 2014. Consultado el 3 de noviembre de 2014 .
- ^ FreeCOM - FreeDOS
Lectura adicional
- Frisch, Æleen (2001). Referencia de bolsillo de comandos de Windows 2000. O'Reilly . ISBN 978-0-596-00148-3.
- McElhearn, Kirk (2006). La línea de comandos de Mac OS X: Unix bajo el capó . John Wiley & Sons . ISBN 978-0470113851.
Enlaces externos
- pushd | Documentos de Microsoft
- popd | Documentos de Microsoft