C'est peut-être une question stupide, et je pense avoir cherché ailleurs pour trouver la réponse ... Peut-être un problème de chemin, mais lorsque j'ouvre la ligne de commande et que je tape à partir du C:\>
:
cd D:\
Je n'arrive 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 de tabulation, ainsi il saura où je suis. Cela n'imprime tout simplement pas le résultat ou ne m'y amène pas. Ce problème existe aussi pour les lecteurs réseau.
Maintenant, si j'utilise la commande chdir
(cd
) comme ceci:
chdir D:
ou cd d:
Je reçois l’impression du D:\
sous la commande, mais il reste que je suis dans le C:\
.
Je sens que je manque quelque chose de simple.
Pour revenir à l'époque du DOS, il existe un "répertoire actuel" distinct pour chaque lecteur. cd D:\foldername
remplace le répertoire actuel de D: par le nom de dossier spécifié, mais ne change pas le fait que vous travaillez toujours sur le lecteur C:
.
Ce que tu veux est simple:
D:
Ici vous pouvez voir comment fonctionne le "Répertoire en cours séparé pour chaque lecteur":
C:\Users\coneslayer>e:
E:\>c:
C:\Users\coneslayer>cd e:\software
C:\Users\coneslayer>e:
e:\Software>
Vous ne savez tout simplement pas comment cela est censé fonctionner.
Vous n'utilisez pas de programme Unix ou Linux Shell. La commande cd
dans l'interpréteur de commandes de Microsoft ne se comporte pas comme le font les commandes cd
dans de tels shells. Il se comporte un peu différemment. En particulier, il ne change pas toujours de 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
l'interroge parfois. Il n'y a pas de commande pwd
séparée, donc cd
effectue deux tâches.
Si vous ne lui donnez pas d'argument, ou si l'argument est juste une lettre de lecteur et deux points sans chemin d'accès, alors il indique le répertoire en cours au lieu de le modifier. Si vous ne lui donnez pas d'argument, il indique le répertoire en cours du lecteur en cours du processus d'interpréteur de commandes. Si vous lui donnez uniquement une lettre de lecteur et un caractère deux-points comme argument, il indique le répertoire en cours du processus interpréteur de commandes de ce lecteur. Chaque lecteur a son propre répertoire actuel dans l'interpréteur de commandes. (Il s'agit d'une fiction gérée par les bibliothèques d'exécution pour les implémentations de divers langages de programmation par Microsoft et plusieurs autres fournisseurs. Win32 lui-même ne fonctionne pas de cette façon.)
Ainsi, lorsque vous lui avez donné d:
comme argument, il vous a signalé le répertoire en cours du processus interpréteur de commandes sur le lecteur D, qui était D:\
. Si vous ne lui aviez donné aucun argument, il vous aurait rapporté C:\
.
Si vous voulez que la commande cd
soit soyez toujours en mode set et ne soyez jamais en mode requête, vous devez y ajouter l'option /D
. Cela force la commande à toujours être en mode de réglage et la étend également de sorte à changer le lecteur en cours ainsi que le répertoire en cours d'un lecteur. (En d'autres termes, cela fonctionne plus comme le fait réellement l'API Win32 sous-jacente.)
Ainsi, par exemple, la ligne de commande
cd/d d:
Si vous voulez changer le lecteur actuel du processus d'interpréteur de commandes, la commande cd
n'est pas la solution. Vous le faites simplement en tapant la lettre de lecteur et un deux-points:
ré:
J'ai peur que ce soit incorrect. Cela est vrai depuis le temps du DOS, mais la ligne de commande dans Windows NT et les versions ultérieures ne sont pas DOS. Dans la ligne de commande que tout le monde utilise aujourd'hui, vous avez le commutateur/D. Le commutateur/d modifiera le répertoire en cours du lecteur spécifié ET basculera vers ce répertoire. Le commutateur/d doit être spécifié avant le chemin. Par exemple:
C:\> cd /d D:\foo\bar\
D:\foo\bar\>
CDsignifieChangeDirectory et non Change Drive. Donc, cela ne changerait pas en D: comme ça. Pour ce faire, il vous suffit de taper la lettre du lecteur.
par exemple.
ré:
Le répertoire de travail dans cmd.exe est maintenu sur une base volume-by-volume
; le répertoire de travail du lecteur C:
est différent du répertoire de travail du lecteur D:
.
Lorsque vous ne transmettez qu'une lettre de lecteur à cd
, le répertoire de travail du lecteur spécifié est imprimé.
Dans votre cas, le répertoire de travail du lecteur D:
est la racine du volume lui-même, D:\
.
Pour modifier les volumes de C:
à D:
, entrez simplement la lettre du lecteur:
C:\>D:
D:\>
Utilisez cd/D D: pour le faire. Vous pouvez également spécifier des chemins.
Si vous voulez changer de lecteur dans une invite de commande DOS, il vous suffit d'écrire:
[Drive Letter]:
Par exemple, si vous souhaitez déplacer le lecteur D: \, il vous suffit de saisir ce qui suit dans une invite de commande:
D:
pushd
fonctionne même lorsque vous devez accéder au sous-répertoire du lecteur, par exemple. D:\Tests\Logs
.
Utilisez-le simplement pour:
pushd D:\Tests\Logs
Si vous voulez revenir au répertoire précédent, utilisez popd
:
C:\Users>pushd D:\Tests\Logs
D:\Tests\Logs>popd
C:\Users>
Pendant que vous allez rechercher une option dans la barre d’outils et cherchez cmd ou en sélectionnant toutes les fenêtres, sélectionnez la commande Invite de commande, puis il faut une autre commande Invite. Au lieu de cela, essayez d’appuyer sur le bouton windows + R et recherchez cmd pour C:> lecteur. De là, vous pouvez naviguer vers D:> ou n'importe où vous avez besoin