Perché cd in Windows non è in grado di passare da un'unità all'altra? [duplicare]


12

Possibile duplicato:
utilizzando il comando cd nella riga di comando di Windows, non è possibile passare a D: \

Perché, proprio perché, cdin Windows è così stupido e non fa quello che dovrebbe fare in situazioni come questa:

I:\Documents and Settings\blah\>cd C:\somedir\
I:\Documents and Settings\blah\>

So che puoi chdir /d. Ma perché non è questo il comportamento predefinito?


@kinokijuf: non modificare i tag se non sai cosa significano.
houbysoft,

Non sono d'accordo che questo è un duplicato. Il "duplicato" chiede come , non perché .
vcsjones,

Risposte:


21

Questo è di progettazione. Ogni "unità" ha la sua directory di lavoro. Puoi usare chdiro puoi semplicemente digitare la lettera di unità:

> D:

E questo cambierà nell'unità D. Se vuoi sapere perché esiste questo comportamento, vedi la spiegazione di Raymond Chen


Come dice il blog s/has/used to have/, e la cmdshell emula questo comportamento.
user1686

Fondamentalmente, perché cd è cambia directory, non cambia unità.
Rob,

11

In Windows potrebbe utilizzare il nativo cd/d <drive>:<path>o altrimenti chdir/do pushd. È l' /dopzione che indica che anche l'unità dovrebbe cambiare. Il pushdcomando fa questo per impostazione predefinita.

Può anche alias cd per rendere tale comportamento predefinito in questo modo:

doskey cd=chdir/d $*

Quindi puoi usare cose come:

cd D:\Temp
cd C:\WINDOWS

e anche l'unità cambierà.

Consulta la guida inserendo cd/?per maggiori dettagli.


2

È una cosa storica. cdcambia solo la directory corrente sull'unità specificata (corrente se nessuna) e <drive>:cambia le unità nella cartella su quell'unità che era cdprecedente ( \se nessuna)


1

alcune shell di terze parti - come 4dos ha il comando CDD per questo

È possibile creare un file batch chiamato "cdd.bat" nella directory principale di Windows con la seguente riga:

@cd /d %1 %2 %3 %4 %5 %6 %7 %8 %9

Ora puoi eseguire le seguenti operazioni con il nuovo comando CDD:

C:> cdd d:

D:> cdd c: \ documenti e impostazioni

C: \ Documents and Settings> cdd d: \ data

D: \ data>


Che ne dici@cd /d %*
user1686 del
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.