Question En utilisant la commande cd dans la ligne de commande Windows, vous ne pouvez pas naviguer vers D: \


C'est peut-être une question stupide, et je pense que j'ai cherché ailleurs pour trouver la réponse ... Peut-être un problème de chemin, mais quand j'ouvre la ligne de commande et que je tape à partir du C:\>:

cd D:\

Je ne peux pas accéder au lecteur D. Même si je tape:

cd D:\<folder name>

le command.exe complétera automatiquement la ligne avec la touche tabulation, donc elle sait où je suis. Il n'imprime tout simplement pas pour filtrer le résultat ou pour me faire parvenir. Ce problème existe également pour les lecteurs réseau.

Maintenant, si j'utilise le chdir (cd) commande comme ceci:

chdir D: ou cd d:

Je reçois l'impression de la D:\ en dessous de la commande, mais il dit toujours que je suis dans le C:\.

J'ai l'impression de manquer quelque chose de simple.


189
2018-04-27 15:35


origine


J'ai utilisé pushd au lieu de cd à peu près partout car il se comporte beaucoup mieux dans de telles situations. - Goyuix
Voir cette réponse "cd / d D:" superuser.com/a/135239/78897 - Pacerier
Essayez ceci: cd / d d: - DevWL


Réponses:


En remontant à l'époque du DOS, il existe un "répertoire courant" distinct pour chaque lecteur. cd D:\foldername change le répertoire actuel de D: au nom de répertoire spécifié, mais ne change pas le fait que vous travaillez toujours sur le C: conduire.

Ce que vous voulez est simple:

D:

Ici, vous pouvez voir comment fonctionne le "répertoire courant distinct pour chaque lecteur":

C:\Users\coneslayer>e:

E:\>c:

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

C:\Users\coneslayer>e:

e:\Software>

272
2018-04-27 15:38



Dans une situation de "pistolet le plus rapide en occident", le gagnant est celui qui donne la meilleure explication. +1 et je supprime ma réponse similaire. - Gnoupi
Supprimé le mien aussi. Pas besoin de l'encombrement supplémentaire. - th3dude
-1 a) vous n'avez pas fait remarquer que le cd e:\software ligne n'a rien fait. Comme si vous aviez collé une commande fantôme sur CD, pourquoi? Pour lui faire croire que tu utilisais un CD quand tu n'étais pas? et b) comment pouvez-vous ne pas mentionner /dactiver CDing à un répertoire particulier sur un lecteur différent Il a dit en utilisant la commande cd donc tant que c'est bien que vous ayez souligné comment cela peut se faire sans la commande CD d:<ENTER>, vous devriez avoir mentionné pour la commande de CD aussi cd /d d: ou cd /d d:\blah - barlop
@barlop le cd E:\software ne fait rien. Il change le répertoire en cours de la partition E au software dossier, qui est ce qui est démontré lors du passage à la partition E avec E:. Bonne suggestion avec cd / d cependant. - miyalys
@miyalys intéressant et excellent point - barlop


Il fait travailler, car la commande est conçue pour fonctionner.

Vous ne savez tout simplement pas comment cela est censé fonctionner.

Vous n'utilisez pas de programme shell Unix ou Linux. le cd commande dans l’interpréteur de commandes de Microsoft ne se comporte pas comme le cd commandes dans de telles coquilles font. Il se comporte quelque peu différemment. En particulier, il ne change pas toujours le répertoire. Dans les shells Unix et Linux, cd ne définit jamais que le répertoire de travail. Dans l’interpréteur de commandes de Microsoft, cd le demande parfois. Il n'y a pas de séparé pwd commande, donc cd fait deux emplois.

Si vous ne lui donnez aucun argument, ou un argument qui est juste une lettre de lecteur et un deux-points sans chemin, alors il rapporte le répertoire en cours au lieu de le changer. Si vous ne lui donnez aucun argument, il indique le répertoire actuel du lecteur en cours du processus d'interpréteur de commandes. Si vous ne lui attribuez qu'une lettre de lecteur et un deux-points en tant qu'argument, cela indique le répertoire actuel du processus de l'interpréteur de commandes. Chaque lecteur a son propre répertoire en cours dans l'interpréteur de commandes. (Ceci est une fiction maintenue par les bibliothèques d'exécution pour les implémentations de Microsoft et de plusieurs autres fournisseurs de différents langages de programmation. Win32 lui-même ne fonctionne pas de cette façon.)

Alors quand tu l'as donné d: en tant qu'argument, il vous a signalé le répertoire actuel du processus d'interprétation de la commande sur le lecteur D, qui se trouvait être D:\. Si vous ne lui aviez donné aucun argument, il aurait rapporté C:\ à toi.

Si vous voulez le cd commande à toujours être en mode set et ne jamais être en mode requête vous devez ajouter le /D option à elle. Cela oblige la commande à toujours être en mode set, et l'étend également de manière à modifier le lecteur actuel et à modifier le répertoire actuel d'un lecteur. (En d'autres termes, cela fonctionne plus comme le fait l'API Win32 sous-jacente.)

Ainsi, par exemple, la ligne de commande

cd / d d:
 changera de répertoire quel que soit le répertoire actuel du lecteur D, et changera également le lecteur actuel en lecteur D.

Si vous voulez changer le lecteur actuel du processus d'interpréteur de commandes, le cd le commandement n'est pas la voie. Vous le faites simplement en tapant la lettre de lecteur et un deux-points:

ré:

Lectures complémentaires

  • JP Software (2011). CD / CHDIR Aide en ligne de TCC.
  • Microsoft corporation (2001). Chdir (CD). TechNet Windows XP Ligne de commande référence A-Z.

74
2018-01-19 14:17



Article connexe par Raymond Chen. - Daniel Beck♦
Pas tout à fait raison. Si tu fais cd d:\  il modifie le répertoire de travail sur d:. Si tu fais d:\  après il sera à d:\ . Si tu fais cd d:\something\something rien ne se passera au début. Mais si tu le fais d:\  après, encore une fois, votre chemin sera d:\something\something"! - sinni800
Rien de ce qui contredit ce qui est écrit ci-dessus en aucune façon, sinni800 (mis à part la syntaxe de modification du lecteur actuel, mais je ne le comprendrai pas). Je n'ai pas inclus la discussion de ce qui se passe quand on fournit un nom de chemin dans un argument parce que (a) ce n'est pas ce dont il s'agit et (b) c'est dans la lecture ultérieure. - JdeBP
Non, nous ne sommes pas. Il serait faux de parler de partitions au lieu de lecteurs ici, user unknown. Pour les débutants, les partitions ne sont pas les mêmes que les volumes et les lettres de lecteur sont mappées sur les volumes et non sur les partitions. Et quand on parle à ce niveau d'abstraction, lettre de lecteur et lecteur actuel sont les termes classiques, tels qu’utilisés ici, dans la lecture ultérieure indiquée, et même dans le cd /? Texte d'aide. - JdeBP
J'ai utilisé cette commande pendant au moins 20 ans et je n'ai jamais su cela. - Chris Ballance


Peur c'est faux. C'est vrai depuis l'époque du DOS, mais la ligne de commande dans Windows NT et les versions ultérieures n'est pas sous DOS. Dans la ligne de commande que tout le monde utilise aujourd'hui, vous avez le commutateur / D. Le commutateur / d modifie le répertoire en cours du lecteur spécifié et passe à ce répertoire. Le commutateur / d doit être spécifié avant le chemin. Par exemple:

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

windows command prompt cd


42
2018-04-27 16:28



+1 parce que j'ai appris quelque chose de nouveau, mais je ne pense pas que quelque chose que j'ai écrit soit incorrect. - coneslayer
Votre réponse est également correcte, Multiverse IT, mais coneslayer n'était pas incorrect. Merci pour vos efforts. J'ai appris deux grands trucs sur cette question. - nicorellius
De mon point de vue "Ce que vous voulez est simple ... D:" est incorrect. Oui, cela fonctionne et est une méthode valable pour atteindre l'objectif, mais ce n'est pas, à proprement parler, ce qu'il devrait vouloir. De plus, la façon dont le commentaire est formulé implique que vous ne pouvez pas utiliser le CD pour ce faire - cette implication est incorrecte. - Multiverse IT
Son principal problème est "Je ne peux pas accéder au lecteur D". En tant que tel, l'autre réponse est correcte. Votre solution prend simplement un pas de moins (ce qui est bien). Cela ne rend pas l'autre incorrecte. - Gnoupi
Hmm, "ce qu'il devrait vouloir" Cela semble plutôt présomptif ;-) - nicorellius


CD représente Csuspendre répertoire, et ne pas changer de lecteur. Donc, ça ne changerait pas en D: comme ça. Pour ce faire, il vous suffit de taper la lettre du lecteur

par exemple.

ré:


19
2018-01-19 07:58



cd / D D: modifie les lecteurs et les répertoires ... - Michael S.
Mais d: est une partition, pas un lecteur. - user unknown
@userunknown À l'époque de Dos 1.0, lorsque le shell était conçu, seules les disquettes AFAIK ne pouvaient pas être partitionnées. La prise en charge initiale de hardrive était uniquement pour la première partition (principale) sur un lecteur. La prise en charge de la partition étendue n'a été ajoutée que plus tard. - Dan Neely
Je ne vois pas une balise MS-DOS 1.0, ni 1.0 mentionné. Peut-être que vous ne pouvez pas partitionner un lecteur avec des programmes MS-DOS, mais vous pouvez installer un MS-DOS sur un lecteur partitionné. Je suppose que MS-DOS est hors de support si, et la balise est là, car de nombreux utilisateurs croient que cmd.exe et MS-DOS signifie la même chose, ce qui est une autre erreur à résoudre. À propos: MS-DOS 1.0 n'a jamais été publié. - user unknown
@userunknown Les décisions de conception remontent aux versions initiales de DOS. Changer de comportement aurait brisé des programmes plus anciens (voir le commentaire de Daniel Beck ci-dessous). PS; Selon Wikipedia, MS DOS 1.x a été publié. - Dan Neely


Le répertoire de travail dans cmd.exe est maintenu sur un volume-by-volume base; le répertoire de travail pour le C: lecteur est différent du répertoire de travail pour le D: conduire.

Lorsque vous transmettez uniquement une lettre de lecteur à cd, il imprimera le répertoire de travail pour le lecteur spécifié.

Dans votre cas, le répertoire de travail du D: lecteur est la racine du volume lui-même, D:\.

Pour modifier les volumes à partir de C: à D: entrez simplement la lettre de lecteur:

C:\>D:
D:\>

9
2018-01-19 08:12



cd / D D: modifie les lecteurs et les répertoires ... - Michael S.
Les partitions sont mappées à une lettre de lecteur et sont pratiquement identiques à un lecteur. Vous pouvez également mapper un répertoire ou partager sur un lecteur, et ils se comportent de la même manière. - Marty Fried


Utilisation cd / D D: pour faire ça. Vous pouvez également spécifier des chemins.


8
2018-01-19 13:33





Si vous voulez changer de lecteur dans une invite de commande DOS, il vous suffit d'écrire:

[Drive Letter]:

Par exemple, si vous souhaitez passer au lecteur D: \, il vous suffit de taper le code suivant: dans une invite de commande:

D:

5
2018-01-19 15:52



Vous changez la partition avec [Drive Letter]:Croyez-moi ou testez-le! - user unknown
Oh wow, ça rend les choses beaucoup plus faciles. J'oublie toujours le /d donc cela rend la commutation beaucoup plus rapide. - Mateen Ulhaq


pushd fonctionne même lorsque vous devez vous rendre dans le sous-répertoire du lecteur, par ex. D:\Tests\Logs.

Il suffit de l'utiliser pour:

pushd D:\Tests\Logs

Si vous voulez revenir à l'utilisation du répertoire précédent popd:

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

2
2017-07-27 21:59





Pendant que vous allez à l'option de recherche dans la barre d'outils et recherchez cmd ou en sélectionnant l'invite de commande de sélection de Windows All App, il vous faudra alors une autre invite de commande. Au lieu de cela, essayez d'appuyer sur le bouton Windows + R et recherchez cmd sur C:> drive. De là, vous pouvez naviguer vers D:> ou n'importe où


0
2018-06-23 22:24