Windowsのcdがドライブを切り替えられないのはなぜですか?[複製]


12

重複の可能性:
Windowsコマンドラインでcdコマンドを使用すると、D:\に移動できない

なぜ、ちょうどなぜ、cdWindowsにそんなに愚かであり、このような状況でそれがするべきことをしない:

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

私はあなたができることを知っていますchdir /d。しかし、なぜそれがデフォルトの動作ではないのですか?


@kinokijuf:タグの意味がわからない場合は、タグを編集しないでください。
houbysoft

これが重複していることに同意しません。「重複」は、理由ではなく方法を尋ねます
vcsjones

回答:


21

これは仕様です。各「ドライブ」には、独自の作業ディレクトリがあります。を使用することもchdir、単にドライブ文字を入力することもできます。

> D:

そして、それはDドライブに変わります。この動作が存在する理由を知りたい場合は、レイモンドチェンの説明を参照してください。


ブログが言うようにs/has/used to have/cmdシェルはこの動作をエミュレートします。
user1686

基本的に、cdはディレクトリの変更であり、ドライブの変更ではありません。
ロブ

11

Windowsでは、ネイティブcd/d <drive>:<path>またはelse chdir/dまたはを使用できますpushd/dドライブも変更する必要があることを示すオプションです。pushdコマンドは、デフォルトでこれを行います。

cdのエイリアスを作成して、デフォルトの動作を次のようにすることもできます。

doskey cd=chdir/d $*

その後、次のようなことを行うことができます:

cd D:\Temp
cd C:\WINDOWS

ドライブも変更されます。

詳細については、入力cd/?してヘルプを参照してください。


2

それは歴史的なものです。cd指定されたドライブ上の現在のディレクトリのみを変更し(存在しない場合は現在)、以前に存在していたドライブ上<drive>:のフォルダドライブを変更しますcd\存在しない場合)


1

いくつかのサードパーティシェル-4dosのようなCDDコマンドがこのため

次の行を使用して、メインのWindowsディレクトリに「cdd.bat」というバッチファイルを作成できます。

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

これで、新しいCDDコマンドを使用して次のことができるようになりました。

C:> cdd d:

D:> cdd c:\ documents and settings

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

D:\ data>


どうですか@cd /d %*
user1686
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.