¿Existe un comando de línea de comando de Windows que pueda usar para obtener la ruta completa al directorio de trabajo actual?
Además, ¿cómo puedo almacenar esta ruta dentro de una variable utilizada en un archivo por lotes?
windows
batch-file
command-line
cmd
usuario62958
fuente
fuente

Respuestas:
Úselo
cdsin argumentos si está utilizando el shell directamente, o%cd%si desea utilizarlo en un archivo por lotes (se comporta como una variable de entorno).fuente
Puede establecer una variable de lote / entorno de la siguiente manera:
captura de pantalla de muestra de un Windows 7 x64 cmd.exe.
Actualización: si haces un en
SET var = %cd%lugar deSET var=%cd%, a continuación es lo que sucede. Gracias a jeb.Capturar el directorio actual de un archivo por lotes
fuente
SET var = %cd%poner el valor en la variablevar<space>no envar. Debe evitar espacios en el comando SETCite la ayuda de Windows para el
setcomando (set /?):Si las extensiones de comando están habilitadas, entonces hay varias dinámicas variables de entorno que se pueden expandir pero que no aparecen en la lista de variables que muestra SET. Estos valores variables son calculado dinámicamente cada vez que se expande el valor de la variable. Si el usuario define explícitamente una variable con uno de estos nombres, entonces esa definición anulará la dinámica que se describe a continuación: % CD%: se expande a la cadena de directorio actual. % DATE%: se expande a la fecha actual con el mismo formato que el comando DATE. % TIME%: se expande a la hora actual utilizando el mismo formato que el comando TIME. % RANDOM%: se expande a un número decimal aleatorio entre 0 y 32767. % ERRORLEVEL%: se expande al valor ERRORLEVEL actual % CMDEXTVERSION%: se expande a las extensiones actuales del procesador de comandos número de versión. % CMDCMDLINE%: se expande a la línea de comando original que invoca el Procesador de comando.Tenga en cuenta la
%CD% - expands to the current directory string.parte.fuente
En Unix?
pwd
fuente
Para Windows podemos usar
cdy para Linux
pwdEl comando está ahí.
fuente
Esto siempre me ha funcionado:
fuente
Para Windows,
cdpor sí solo le mostrará el directorio de trabajo actual.Para sistemas UNIX y workalike,
pwdrealizará la misma tarea. También puede usar la$PWDvariable de shell debajo de algunos shells. No estoy seguro de si Windows admite obtener el directorio de trabajo actual a través de una variable de shell o no.fuente
%cd%En Windows:
CHDIR Muestra el nombre o cambia el directorio actual.
En Linux:
PWD Muestra el nombre del directorio actual.
fuente
Según la pregunta de seguimiento (almacenar los datos en una variable) en los comentarios a la publicación de chdir, apuesto a que quiere almacenar la ruta actual para restaurarla después de cambiar los directorios.
El usuario original debe mirar "pushd", que cambia el directorio y empuja el actual a una pila que se puede restaurar con un "popd". En cualquier shell de cmd de Windows moderno, ese es el camino a seguir al hacer archivos por lotes.
Si realmente necesita tomar la ruta actual, las cáscaras de cmd modernas también tienen una variable% CD% que puede guardar fácilmente en otra variable como referencia.
fuente
Cree un
.batarchivo debajoSystem32, nombremos quecopypath.batel comando para copiar la ruta actual podría ser :Explicación:
%cd%te dará la ruta actualAhora
copyclipestá disponible desde todas partes.fuente
Pero, por supuesto , la respuesta de gmaran23 es la más fácil.
fuente
tokens=*arreglos que.En un símbolo del sistema de Windows,
chdirocdimprimirá la ruta completa del directorio de trabajo actual en la consola.Si queremos copiar la ruta, entonces podemos utilizar:
cd | clip.fuente
En Windows, escriba
cdla ruta actual de trabajo.En Linux,
pwdpara la ruta de trabajo actual.fuente
Como uno de los posibles códigos
fuente