pushd, popd
Cuando cambias de carpeta con cd, tienes que recordar dónde estabas si quieres volver.
pushd recuerda la carpeta actual y luego se mueve, y popd te devuelve a la carpeta recordada. Son útiles cuando quieres trabajar un momento en otra carpeta y después volver al punto de partida.
Sintaxis básica
pushd ruta_de_la_carpeta
popd
pushd: recuerda la carpeta actual y se mueve a la carpeta indicada.popd: vuelve a la última carpeta recordada.
Uso básico
pushd C:\Windows\System32
popd

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門
Al ejecutar popd vuelves a C:\Users\sample, donde estabas antes de pushd.
cd necesita /d para cambiar a otra unidad, pero pushd se mueve directamente. Otra gran diferencia es que pushd recuerda la carpeta que dejas.
Las carpetas recordadas se apilan
Las carpetas recordadas por pushd se guardan en una pila. La más reciente queda arriba y popd las retira desde arriba.
pushd C:\Windows
pushd C:\Users
pushd D:\work
A partir de aquí, cada popd retrocede por las carpetas recordadas, de la más nueva a la más antigua.
- Primer
popd: vuelve aC:\Users - Segundo
popd: vuelve aC:\Windows - Tercer
popd: vuelve a la carpeta inicial
Ver el contenido de la pila
Si ejecutas pushd sin argumentos, se muestra la lista de carpetas recordadas. Funciona en un entorno normal, con las extensiones de comandos habilitadas.
Cuanto más arriba está una línea, más cerca está del lugar al que volverá el siguiente popd (se recordó más recientemente).
Moverse a una ruta de red (UNC)
cd no puede moverse a una ruta de red como \\server\share. pushd sí puede, porque asigna automáticamente una letra de unidad libre.
pushd "\\server\share\work"
dir
popd
La letra asignada es la primera libre, empezando por Z: y retrocediendo. Cuando popd te devuelve a la carpeta original, la unidad asignada se libera.
Si ejecutas un archivo por lotes directamente desde una ruta UNC, el directorio actual no puede establecerse en esa ruta y puede aparecer una advertencia. Escribe pushd "%~dp0" al principio del archivo para moverte a la carpeta que lo contiene antes de empezar el trabajo.
Usarlo en archivos por lotes
Cuando un archivo por lotes trabaja en otra carpeta, rodea esa parte con pushd y popd para que el directorio actual sea el mismo antes y después.
@echo off
pushd "%~dp0"
echo Carpeta de este archivo por lotes: %cd%
pushd "C:\data"
if not exist "%~dp0backup" mkdir "%~dp0backup"
copy *.txt "%~dp0backup\"
popd
echo De vuelta en la carpeta del archivo por lotes: %cd%
popd
%~dp0 es la carpeta que contiene el propio archivo por lotes. Consulta
Si el número de pushd y de popd no coincide, puedes quedarte en otra carpeta al terminar el archivo por lotes. Usa siempre pushd y popd en pareja.
Cuando la carpeta no existe
Si indicas a pushd una carpeta que no existe, aparece un mensaje de error y no se produce ningún movimiento.
Si ejecutas popd tras un movimiento fallido, volverás a una carpeta recordada antes. En un archivo por lotes es más seguro controlar el fallo con ||.
pushd "C:\data" || exit /b 1
rem Escribe aquí tus comandos
popd
Consulta
para saber cómo funciona||.
En PowerShell
En PowerShell, pushd y popd son alias de Push-Location y Pop-Location. La pila se gestiona por separado de la del símbolo del sistema.
Resumen
| Objetivo | Comando |
|---|---|
| Recordar la carpeta y moverse | pushd carpeta |
| Volver a la carpeta recordada | popd |
| Listar las carpetas recordadas | pushd (sin argumentos) |
| Moverse a una ruta de red | pushd "\\server\share" |
| Moverse a la carpeta del archivo .bat | pushd "%~dp0" |