Pregunta Al usar el comando cd en la línea de comando de Windows, no se puede navegar a D: \


Esta puede ser una pregunta estúpida, y creo que he buscado en otra parte para encontrar la respuesta ... Podría ser un problema de ruta, pero cuando abro la línea de comando y escribo desde el C:\>:

cd D:\

No puedo llegar al disco D Incluso si escribo:

cd D:\<folder name>

los command.exe completará automáticamente la línea con la tecla de tabulación, para que sepa dónde estoy. Simplemente no se imprime para ver el resultado o realmente me lleva allí. Este problema existe para las unidades de red también.

Ahora, si uso el chdir (cd) comando de esta manera:

chdir D: o cd d:

Me sale la impresión de la D:\ debajo del comando, pero todavía dice que estoy en el C:\.

Siento que me estoy perdiendo algo simple.


189


origen


he estado usando pushd en lugar de cd prácticamente en todas partes, ya que se comporta mucho mejor en situaciones como esta. - Goyuix
Vea esta respuesta "cd / d D:" superuser.com/a/135239/78897 - Pacerier
Prueba esto: cd / d d: - DevWL


Respuestas:


Volviendo a los días de DOS, hay un "directorio actual" por separado para cada unidad. cd D:\foldername cambia el directorio actual de D: al nombre de carpeta especificado, pero no cambia el hecho de que todavía está trabajando en el C: manejar.

Lo que quieres es simple:

D:

Aquí puede ver cómo funciona el "directorio actual separado para cada unidad":

C:\Users\coneslayer>e:

E:\>c:

C:\Users\coneslayer>cd e:\software

C:\Users\coneslayer>e:

e:\Software>

272



En una situación de "arma más rápida en el oeste", el ganador es el que da la mejor explicación. +1, y elimino mi respuesta similar. - Gnoupi
Eliminado el mío, también. No hay necesidad de desorden extra. - th3dude
-1 a) usted no ha señalado que el cd e:\software la línea no hizo nada. Como si hubieras pegado un comando de CD fantasma allí ¿Por qué? ¿Para hacerle pensar que estabas usando CD cuando no lo estabas? yb) cómo diablos no puedes mencionar /dhabilitar CDing a un directorio particular en un disco diferente. Dijo usando el comando cd así que, aunque es bueno que usted lo haya señalado, cómo se puede hacer sin el comando CD d:<ENTER>, deberías haber mencionado también para el comando CD cd /d d: o cd /d d:\blah - barlop
@barlop The cd E:\software NO hace nada Cambia el directorio actual de la partición E al software carpeta, que es lo que se demuestra cuando finalmente se cambia a la partición E con E:. Buena sugerencia con cd / d sin embargo. - miyalys
@miyalys punto interesante y excelente - barlop


Eso hizo trabajo, ya que el comando está diseñado para funcionar.

Simplemente no sabes cómo se supone que funciona.

No estás usando un programa shell de Unix o Linux. los cd comando en el intérprete de comandos de Microsoft no se comporta como el cd los comandos en tales conchas hacen. Se comporta de manera algo diferente. En particular, no siempre cambia de directorio. En las shells de Unix y Linux, cd solo establece el directorio de trabajo. En el intérprete de comandos de Microsoft, cd a veces lo consulta. No hay separacion pwd comando, entonces cd hace dos trabajos

Si no le da argumentos, o un argumento que es solo una letra de unidad y dos puntos sin una ruta, entonces informa el directorio actual en lugar de cambiarlo. Si no le da argumentos, informa el directorio actual de la unidad actual del proceso del intérprete de comandos. Si le da solo una letra de unidad y dos puntos como argumento, informa el directorio actual del proceso del intérprete de comandos de esa unidad. Cada unidad tiene su propio directorio actual en el intérprete de comandos. (Esta es una ficción mantenida por las bibliotecas en tiempo de ejecución para las implementaciones de varios lenguajes de programación de Microsoft y varios proveedores. Win32 en sí mismo no funciona de esta manera).

Entonces cuando lo diste d: como argumento, informó el directorio actual del proceso del intérprete de comandos en la unidad D, que resultó ser D:\. Si no le hubieras dado ningún argumento, habría informado C:\ para ti.

Si quieres el cd comando a siempre estar en modo establecido y nunca estar en modo consulta necesitas agregar el /D opción para ello. Esto fuerza al comando a estar siempre en el modo establecido y también lo extiende para que cambie la unidad actual y cambie el directorio actual de una unidad. (En otras palabras, funciona más como lo hace la API Win32 subyacente).

Entonces, por ejemplo, la línea de comando

cd / d d:
 cambiará el directorio a cualquiera que sea el directorio actual en la unidad D, y también cambiará la unidad actual a la unidad D.

Si desea cambiar la unidad actual del proceso de intérprete de comandos, de lo contrario, el cd el comando no es el camino. Para hacerlo, simplemente escriba la letra de la unidad y dos puntos:

re:

Otras lecturas

  • Software de JP (2011). CD / CHDIR Ayuda en línea de TCC.
  • Microsoft Corporation (2001). Chdir (CD). Referencia de línea de comando de TechNet Windows XP A-Z.

74



Publicación relacionada por Raymond Chen. - Daniel Beck♦
No completamente correcto. Si lo haces cd d:\  cambia el directorio de trabajo en d:. Si lo haces d:\  luego será en d:\ . Si lo haces cd d:\something\something nada sucederá al principio. Pero si lo haces d:\  luego de nuevo, tu camino será d:\something\something"! - sinni800
Nada de lo cual contradice lo que está escrito arriba de ninguna manera, sinni800 (aparte de obtener la sintaxis para cambiar la unidad actual incorrecta, eso es, pero voy a pasar por alto eso). No incluí la discusión de lo que sucede cuando uno proporciona un nombre de ruta en un argumento porque (a) de eso no se trata la pregunta y (b) está en una lectura posterior. - JdeBP
No, no lo estamos. Sería un error hablar de particiones en lugar de unidades aquí, user unknown. Para empezar, las particiones no son lo mismo que los volúmenes, y las letras de las unidades se asignan a los volúmenes, no a las particiones. Y cuando uno habla a este nivel de abstracción, letra de unidad y impulso actual son los términos convencionales, como se usan aquí, en la lectura adicional indicada, e incluso en el cd /? texto de ayuda. - JdeBP
He usado este comando durante al menos 20 años y nunca lo supe. - Chris Ballance


Miedo de que esto sea incorrecto Es cierto desde los días de DOS, pero la línea de comandos en Windows NT y posterior no es DOS. En la línea de comandos que todo el mundo usa hoy, tiene el modificador / D. El modificador / d cambiará el directorio actual de la unidad especificada Y cambiará a ese directorio. El modificador / d debe especificarse antes de la ruta. Por ejemplo:

C:\> cd /d D:\foo\bar\
D:\foo\bar\>

windows command prompt cd


42



+1 porque aprendí algo nuevo, pero no creo que todo lo que escribí sea incorrecto. - coneslayer
Tu respuesta es correcta también, Multiverse IT, pero coneslayer no fue incorrecta. Gracias por tus esfuerzos. Aprendí dos grandes trucos sobre esta cuestión. - nicorellius
Desde mi punto de vista "Lo que quieres es simple ... D:" es incorrecto. Sí, funciona y es un método válido para lograr el objetivo, pero estrictamente hablando no es lo que él debería querer. Además, la forma en que se redacta el comentario implica que no puede usar el CD para hacer esto, esa implicación es incorrecta. - Multiverse IT
su principal problema es "No puedo acceder a la unidad D". Como tal, la otra respuesta es correcta. Su solución toma simplemente un paso menos (lo cual es bueno). No hace que el otro sea incorrecto. - Gnoupi
Hmm, "lo que él debería querer". Suena bastante presuntivo ;-) - nicorellius


discos compactos representa docolgar reirectory, y no Change Drive. Entonces, no cambiaría a D: así. Para lograr esto, simplemente debe escribir la letra de la unidad

p.ej.

re:


19



cd / D D: cambia las unidades y directorios ... - Michael S.
Pero d: es una partición, no una unidad. - user unknown
@userunknown En la era de Dos 1.0, cuando se diseñó el shell, solo había disquetes en los que no se podía particionar AFAIK. El soporte de disco duro inicial era solo para la partición primaria (primera) en una unidad. El soporte de partición extendido no se agregó hasta más tarde. - Dan Neely
No veo una etiqueta de MS-DOS 1.0, ni 1.0 mencionada. Tal vez no pueda particionar una unidad con programas MS-DOS, pero puede instalar un MS-DOS en una unidad particionada. Supongo que MS-DOS está fuera de soporte, y la etiqueta está allí, porque muchos usuarios creen que cmd.exe y MS-DOS significan lo mismo, que es otro error a abordar. A propósito: MS-DOS 1.0 nunca se publicó. - user unknown
@userunknown Las decisiones de diseño datan de las versiones iniciales de DOS. Cambiar el comportamiento habría roto los programas más antiguos (ver el comentario de Daniel Beck a continuación). PD; según la Wikipedia, se publicó MS DOS 1.x. - Dan Neely


El directorio de trabajo en cmd.exe se mantiene en una volume-by-volume base; el directorio de trabajo para el C: unidad es diferente del directorio de trabajo para el D: manejar.

Cuando pasa solo una letra de unidad a cd, imprimirá el directorio de trabajo para la unidad especificada.

En su caso, el directorio de trabajo de la D: unidad es la raíz de volumen en sí, D:\.

Para cambiar los volúmenes de C: a D: simplemente ingrese la letra de la unidad:

C:\>D:
D:\>

9



cd / D D: cambia las unidades y directorios ... - Michael S.
Las particiones se asignan a una letra de unidad y son prácticamente lo mismo que una unidad. También puede asignar un directorio o compartir a un disco, y se comportan de la misma manera. - Marty Fried


Utilizar cd / D D: para hacer esto. Puede especificar rutas también


8





Si desea cambiar la unidad de disco en un símbolo del sistema de DOS, simplemente tiene que escribir:

[Drive Letter]:

Por ejemplo, si desea pasar a la unidad D: \, solo tiene que escribir lo siguiente en un símbolo del sistema:

D:

5



Usted cambia la partición con [Drive Letter]:, créeme o pruébalo! - user unknown
Oh wow, eso hace las cosas muchísimo más fáciles. Siempre me olvido de /d así que esto hace que el cambio sea mucho más rápido. - Mateen Ulhaq


pushd funciona incluso cuando necesita ir al subdirectorio, p. ej. D:\Tests\Logs.

Solo úsalo así:

pushd D:\Tests\Logs

Si quieres volver al uso anterior del directorio popd:

C:\Users>pushd D:\Tests\Logs
D:\Tests\Logs>popd
C:\Users>

2





Mientras va a la opción de búsqueda en la barra de herramientas y busca cmd o seleccionando la aplicación de Windows all que selecciona el símbolo del sistema, lleva a algún otro símbolo del sistema. En su lugar, intente presionar el botón de Windows + R y buscar el cmd que lleva a C:> unidad. Desde allí puede navegar a D:> o a cualquier lugar que necesite


0