BAT-файл, чтобы открыть CMD в текущем каталоге - PullRequest
48 голосов
/ 15 декабря 2010

У меня есть много скриптов, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно их использовать, мне приходится открывать окно командной строки и копировать + вставлять и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системе, поэтому вводим полный путь это боль, копирование + вставка лучше, но не очень). Я попытался создать файл .BAT, который я мог бы дважды щелкнуть, чтобы открыть новое окно командной строки в папке, в которой файл .bat существует в , но он не работает. Откроется новое окно, но рабочий каталог - это не каталог, в котором находится .bat-файл. Вот что я получил после долгих поисков (мои навыки работы с cmd не так хороши):

cd %CD%
cmd.exe

Я знаю, что когда я использовал Linux, в Konqueror была функция «Окно командной строки здесь», и именно этот эффект я пытаюсь получить в Windows.

Ответы [ 16 ]

1 голос
/ 06 января 2017

Ссылаясь на ответ @ Крис,

Мы также можем перейти в родительский каталог пакетного файла и запустить команды, используя следующую команду:

cd /d %~dp0..
<OTHER_BATCH_COMMANDS>
cmd.exe

Чтобы понять работу команды cd /d %~dp0.., пожалуйста, обратитесь к ссылке ниже

Что означает команда cd / d% ~ dp0 в Windows

1 голос
/ 23 июля 2014

Создайте новый файл startCmdLine.bat в вашем каталоге и поместите в него эту строку

call cmd

Вот и все. Теперь дважды щелкните по файлу .bat. У меня это работает.

Вы можете заменить вызов на запуск, он также будет работать.

0 голосов
/ 13 марта 2019

Внутри данной папки щелкните в верхней части Адресная строка и введите cmd и нажмите enter Откроется командная строка с адресом текущей папки.

0 голосов
/ 26 апреля 2017

вы можете попробовать:

shift + щелкните правой кнопкой мыши

, затем нажмите кнопку Открыть командную строку здесь

0 голосов
/ 23 июня 2014

у меня этот код работает назовите это cmd.bat

@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop
0 голосов
/ 28 марта 2014

Немного опоздал к игре, но если я правильно понимаю ваши потребности, это поможет людям с той же проблемой.

Два решения с одинаковым первым шагом: Сначала перейдите в папку, в которой хранятся ваши сценарии, и скопируйте путь к файлу в этот каталог.

Первое решение:

  • Нажмите «Пуск»
  • Щелкните правой кнопкой мыши «Компьютер» (или «Мой компьютер»)
  • Нажмите «Свойства»
  • Слева нажмите «Расширенные настройки системы»
  • Нажмите «Переменные среды»
  • В поле «Системные переменные» прокрутите вниз и выберите «ПУТЬ»
  • Нажмите «Редактировать»
  • В поле «Значение переменной» полностью прокрутить вправо
  • Если точки с запятой (;) еще нет, добавьте ее.
  • Вставьте в путь к файлу, который вы скопировали ранее.
  • Конец точкой с запятой.
  • Нажмите «ОК»
  • Снова нажмите «ОК»
  • Нажмите «ОК» в последний раз

Теперь вы можете использовать любой из ваших скриптов, как если бы вы уже были в этой папке.

Второе решение: (может быть легко совмещено с первым для дополнительной полезности)

На рабочем столе создайте командный файл со следующим содержимым.

@echo off
cmd /k cd "C:\your\file\path"

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


Информацию о командах Windows можно найти здесь: http://ss64.com/nt/

...