-1

Скажем, мой рабочий стол находится на «F:/Desktop». Почему в командном файле это будет работать:

@echo off
setlocal enabledelayedexpansion

set DesktopFolder=F:\Desktop

cd /
cd !DesktopFolder!

Но это не будет

cd /
cd F:\Desktop

1 ответ1

1

Мартино ответил вам, почему второй не работает.

Наконец, если вы хотите, чтобы cd также менял текущий диск и текущий каталог, вам нужно использовать параметр /d, как в cd /d% DesktopFolder%

Текущий каталог и текущий диск - это разные вещи.

Чтобы увидеть его в действии, откройте командную строку (которая, вероятно, будет начинаться с C:\Users\% username%), введите cd F:\Desktop и обратите внимание, что вы ничего не изменили. Если после этого вы добавите F: вы обнаружите, что рабочий каталог на F: уже был изменен на рабочий стол, а не на корневой.

Параметр /d, на который ссылается Мартино, делает оба в одном кадре.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .