2014-09-04 1 views
0

В CMD строке, если вы хотите, чтобы перейти отЗачем вам нужно менять диски в подсказках cmd?

c:\foo\ 

в

d:\bar\ 

Вы должны ввести

d: 

изменить диск первым, прежде чем вы можете

cd d:\bar\ 

В Linux вам не обязательно это делать. Почему cmd неинтуитивно заставляет вас это делать? Историческая? Ограничение реализации? По дизайну?

Я понимаю, что

cd /d 

имитирует поведение Linux, однако почему поведение Linux не по умолчанию? Насколько я могу сказать, когда вы

cd anotherDrive:\directory\ 

он просто ничего не делает, так что это не так, как «без/D» Использование зарезервирован для некоторых других семантики.

+0

Собственно, 'cd v: \ whatever' ничего не делает. Он изменяет рабочий каталог на другом диске. Причиной такого поведения является поддержание обратной совместимости (это полностью возвращается к DOS 2.0). –

ответ

1

вам не нужно

просто читать HELP CD

, а затем попробовать

CD /d d:\bar 

поведение по умолчанию CD по-прежнему существует для обратной совместимости со старыми версиями DOS, где существование двухъядерные отсеки сделали его полезным.

Более новые команды, например pushd, делают поведение по умолчанию, чтобы почтить диск и путь.

4

Имея один текущий рабочий каталог каждого диска позволяет делать такие вещи, как

> cd d:\some\long\path\  # Set the working directory of that other drive 
> copy myFile.txt d:  # Copy the current file to that drive 
> cd ..      # Go elsewhere 
> copy anotherFile.txt d: # Copy another 

Держу пари, это было удобно в те дни, когда вы работали с 2-х дисководов.

У меня нет технических причин для этого. Предположительно, просто выбор дизайна, как работать с подсказкой.

As PA. вы можете использовать переключатель /d, если вам не нравится это поведение.

+2

окончательный полезный - я использую это довольно часто. – Stephan

+0

Это ответ. В Windows каждая буква диска имеет свой текущий каталог, поэтому 'cd anotherDrive: \ directory \' фактически что-то делает. Текущий диск - отдельная вещь, поэтому можно изменить текущий диск без изменения текущего каталога на любом из дисков или наоборот. –