Por que o cd no Windows não consegue alternar entre as unidades? [duplicado]

12

Por que, apenas porque, o cd no Windows é tão estúpido e não faz o que deveria fazer em situações como esta:

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

Eu sei que você pode chdir /d . Mas por que esse não é o comportamento padrão?

    
por houbysoft 25.12.2010 / 18:48

4 respostas

20

Isso é por design. Cada "drive" tem seu próprio diretório de trabalho. Você pode usar chdir ou simplesmente digitar a letra da unidade:

> D:

E isso mudará para a unidade D. Se você quiser saber por que esse comportamento existe, consulte Explicação de Raymond Chen

    
por 25.12.2010 / 18:55
9

No Windows, é possível usar o cd/d <drive>:<path> nativo ou chdir/d ou pushd . É a opção /d que indica que a unidade também deve ser alterada. O comando pushd faz isso por padrão.

Até alias cd para fazer com que o comportamento padrão seja assim:

doskey cd=chdir/d $*

Em seguida, pode usar coisas como:

cd D:\Temp
cd C:\WINDOWS

e a unidade também será alterada.

Veja a ajuda inserindo cd/? para mais detalhes.

    
por 29.12.2010 / 23:14
2

É uma coisa histórica. cd apenas altera o diretório atual na unidade especificada (atual, se nenhum) e <drive>: altera as unidades para a pasta nessa unidade que era cd 'd anterior ( \ se nenhum)

    
por 25.12.2010 / 18:53
1

algumas shells de terceiros - como o 4dos tem o comando CDD para isso

Você pode criar um arquivo de lote chamado "cdd.bat" no diretório principal do Windows com a seguinte linha:

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

Agora, você pode fazer o seguinte com o novo comando CDD:

C: > cdd d:

D: > cdd c: \ documentos e configurações

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

D: \ data >

    
por 25.12.2010 / 20:57

Tags