Ярлык командной строки, указывающий на конкретную папку

34

Как создать ярлык на рабочем столе, который открывает командную строку (cmd) в определенной папке? Я устал от перехода из моего домашнего каталога в каталоги разработки.

Аманда С
источник
1
Ввод cmdв адресной строке любой папки в проводнике Windows также открывает ее в папке (я на Windows 10, не уверен, работает ли она в более старых версиях!)
ᔕᖺᘎᕊ

Ответы:

34

Создайте ярлык, а затем щелкните правой кнопкой мыши, чтобы открыть диалоговое окно свойств, и задайте для свойства «Начать с:» свою папку.

настройка начальной папки

ChrisF
источник
1
Похоже, что это не работает для любого диска, кроме того, где установлена ​​ваша система.
WORMSS
10
Когда Properties > Shortcut Tab > Advanced > Run as administratorвключено, это решение не работает.
Джозеф Дикстра
9

Или вы можете просто использовать целевую строку, подобную этой:

C:\Windows\system32\cmd.exe /k "c: & cd c:\drv\bat"

Очевидно, C:\Windows\System32\cmd.exeэто бежать cmd. /kВыполняет команду по строке и продолжается. Строка является "c: & cd c:\drv\bat". Внутри строки c:просто меняется буква диска. В &связи обе команды вместе. А компакт-диск c:\drv\bat- это в основном каталог изменений. Также следует отметить, что компакт-диск c:\drv\batтакже должен менять диски.

волнения
источник
1
Разве это не "cd / d <путь>" для путей на другом диске?
Кристиан Северин
6

Конечно, есть несколько способов снять шкуру с этой кошки.


Пакетный файл также может сделать это для вас. Это запустит вас в каталоге Program Files на диске C:

@ECHO OFF
CD /D "C:\Program Files\"
CMD

Особенно обязательно используйте /Dпереключатель, если вы переходите на диск, отличный от того, с которого обычно запускается CMD.


Open Command Window Здесь PowerToy для Windows XP также достаточно удобно для перехода прямо из сессии проводника, в консоль CMD в определенной директории.


Вы можете использовать строковое значение AutoRun в одном из следующих разделов реестра, чтобы, по существу, автоматизировать вышеописанное для всех сеансов CMD.

Только для вашей учетной записи:

HKCU\SOFTWARE\Microsoft\Command Processor\

Для всех пользователей на этой машине:

HKLM\SOFTWARE\Microsoft\Command Processor\

Если значение AutoRun не существует, создайте его как тип REG_SZ (также известный как строковое значение). Для данных вы можете либо указать путь к пакетному файлу, подобному приведенному выше (удалить строки ECHO и CMD), либо просто вставить команду CD, как показано в примере выше.

Преимущество указания реестра на командный файл вместо простого добавления команды заключается в том, что вы можете добавить в командный файл столько команд автозапуска, сколько вам нужно. Таким образом, вы можете создавать собственные форматы приглашений или создавать сценарии для других задач, которые вы хотите выполнять при каждом запуске CMD.

Однако при внесении этих изменений в реестр следует помнить, что они могут повлиять на поведение других пакетных файлов. В частности, пакетные файлы могут оказаться не в том каталоге, для которого они изначально были написаны.

Как всегда, сделайте резервную копию вашего реестра, прежде чем делать какие-либо непроверенные изменения.

Iszi
источник
1

Отвечая через 7 лет после вопроса :-)
В любом случае это может кому-то помочь!

Чтобы ярлык работал с включенной опцией « Запуск от имени администратора» :

Вставьте ваши команды, разделенные текстовым полем &In Target диалога Properties после /kпереключателя. Не забывайте, что команды, содержащие имена папок с пробелами (например, Program Files), должны быть заключены в двойные кавычки.

Следующий пример

  • открывает командную строку
  • запускает командный файл Node.js
  • переключается на диск D
  • идет в codeкаталог

C:\Windows\System32\cmd.exe /k "D:\Program Files\nodejs\nodevars.bat" & d: & cd d:\code

Камран
источник
1
Это отлично работает, должно быть больше голосов для административных ярлыков (лучшее объяснение с примерами IMO) .
Lankymart
Я заглянул в nodevars.bat и не смог найти ничего, что оправдывало бы разницу (см. Github.com/nodejs/node/blob/master/tools/msvs/nodevars.bat ) Кто-нибудь может это объяснить?
Майра Дельгадо
0

Вы можете перейти в каталог, где по умолчанию находится ярлык cmd.exe (тот, который появляется при вводе «cmd» в меню «Пуск») и изменить там начальный каталог.

Для меня ярлык был расположен в:

C:\Users\<username>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\System Tools

Щелкните правой кнопкой мыши по ярлыку cmd, выберите свойства и измените запуск в каталоге так, как вам нравится. Теперь, когда вы запускаете командную строку из меню «Пуск» (как я часто это делаю), в ней будет нужный каталог.

PJE
источник
0

Возможно, я опоздаю на несколько лет, но зачем все усложнять, просто запустив cmd в качестве администратора в определенной папке.

Создать ярлык.

скопируйте это в целевую папку

% windir% \ system32 \ cmd.exe / k "cd \ & cd c: \ YOURdirectory

если он находится на другом диске, кроме c: сделайте это

% windir% \ system32 \ cmd.exe / k "cd \ & YOURdrive: & cd YOURdrive: \ YOURdirectory

скопируйте это, чтобы начать в

% HOMEDRIVE %% HOMEPATH%

в дополнительных свойствах выберите запуск ярлыка от имени администратора.

Pravab
источник