BAT файл для открытия CMD в текущем каталоге
У меня есть много скриптов, с которыми я взаимодействую из командной строки. Каждый раз, когда мне нужно их использовать, я должен открыть окно командной строки и скопировать + вставить и CD в путь к каталогу, в котором они находятся. Это утомительно (они находятся в довольно глубокой файловой системе, поэтому вводя полный путь боль, копия + вставка лучше, но не много). Я попытался создать файл .BAT, который я мог бы дважды щелкнуть по нему, чтобы открыть новое окно командной строки в папке, где есть файл .bat, но он не работает. Он открывает новое окно, но рабочий каталог не является каталогом, в котором находится файл .bat. Вот что я получил после многоголоджинга (мои умные навыки не так велики):
cd %CD%
cmd.exe
Я знаю, когда я использовал Linux, у Konqueror была функция "Command-line window здесь" и что эффект, который я пытаюсь получить в Windows.
Ответы
Ответ 1
Создайте файл с именем open_dos_here.cmd
со следующими строками:
%~d1
cd "%~p1"
call cmd
Поместите этот файл в любую папку.
Затем перейдите в папку "Отправить" (Win + E; Alt + D; shell:sendto
; Enter).
Создайте ярлык, чтобы указать на это open_dos_here.cmd
Затем в любой папке выберите любой файл или подпапку. Щелкните правой кнопкой мыши и выберите "Отправить в", а затем выберите open_dos_here.cmd
, чтобы открыть DOS в этой папке.
Ответ 2
вы, вероятно, захотите сделать это:
cd /d %~dp0
cmd.exe
это установит ваш текущий каталог в каталог, в котором у вас есть пакетный файл в
Ответ 3
Вы можете просто ввести cmd
в адресную строку в проводнике и запустить его в этом пути. Аналогично для PowerShell.
Ответ 4
В качестве более общего решения вы можете проверить Microsoft Power Toy для XP, который добавляет параметр "Открыть командное окно здесь" при щелчке правой кнопкой мыши: http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx
В Vista и Windows 7 вы получите эту опцию, если вы удерживаете shift и щелкните правой кнопкой мыши (это встроено).
Ответ 5
Там более простой способ
start /d "folder path"
Ответ 6
Я думаю, что если вы создаете пакетный пакет script, который полагается на текущий каталог, который будет установлен в папку, содержащую пакетный файл, вы настраиваете себя на наличие проблем при попытке выполнить пакетный файл используя полный путь, как вы планировали.
Лучше добавить эту строку в свой пакетный файл:
REM Change Current Directory to the location of this batch file
CD /D %~dp0
если вы полностью не определили все свои пути.
Ответ 7
Вы можете добавить запись в контекстное меню через реестр:
-
Перейдите в свой реестр, чтобы
HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
и создайте ключ под названием "Командная строка" без кавычек.
-
Задайте строку по умолчанию любому тексту, который вы хотите отобразить, в меню правой кнопки мыши.
-
Создайте новый ключ в своей недавно созданной командной строке с именем "command" и установите для строки по умолчанию
cmd.exe /k pushd %1
Вам может потребоваться добавить %SystemRoot%\system32\
перед cmd.exe, если исполняемый файл не может быть найден.
- Изменения должны произойти немедленно. Щелкните правой кнопкой мыши папку и появится новый пункт меню.
Также см. http://www.petri.co.il/add_command_prompt_here_shortcut_to_windows_explorer.htm
Ответ 8
Другим решением является использование ярлыка файла cmd.exe вместо пакетного файла.
Отредактируйте ярлык начать в до % ~ dp0.
Вы достигаете того же, за исключением того, что у него есть значок Cmd (и вы можете изменить это).
Некоторым людям не нравится нажимать на пакетные файлы, не зная, что в них, а некоторые корпоративные сетевые диски имеют запрет на файлы .bat...
Ответ 9
Простейшая команда для этого:
start
Вы всегда можете запустить это в командной строке, чтобы открыть новое окно командной строки в том же месте. Или вы можете поместить его в свой .bat файл.
Ответ 10
Самый простой способ в проводнике - Shift + щелкнуть правой кнопкой мыши по папке или на пустом месте в папке и нажать Open command prompt here
.
CMD затем запустится в этой папке
Я должен сказать, что я не уверен, что он работает для Windows Vista и ниже, но он, безусловно, работает для Windows 7, 8, 8.1 и 10.
Ответ 11
Может быть, немного старого квеста, но для тех, что мне нравятся, для этого вы можете сдвинуть и щелкнуть правой кнопкой мыши по папке. Таким образом, меню содержимого плохо отображает здесь окно команд.
Ответ 12
Немного поздно в игре, но если я правильно понимаю ваши потребности, это поможет людям с той же проблемой.
Два решения с одним и тем же первым шагом:
Сначала перейдите к месту, в котором вы храните свои скрипты, и скопируйте путь к файлу в этот каталог.
Первое решение:
- Нажмите "Пуск"
- Щелкните правой кнопкой мыши "Компьютер" (или "Мой компьютер" )
- Нажмите "Свойства"
- Слева щелкните "Дополнительные настройки системы"
- Нажмите "Переменные среды"
- В поле "Системные переменные" прокрутите вниз и выберите "PATH"
- Нажмите "Изменить"
- В поле "Значение переменной" прокрутите весь путь вправо
- Если там еще нет двоеточия (;), добавьте его.
- Вставить в путь к файлу, который вы скопировали ранее.
- Завершить с помощью двоеточия.
- Нажмите "ОК"
- Нажмите "ОК" еще раз
- Нажмите "ОК" в последний раз
Теперь вы можете использовать любой из своих скриптов, как если бы вы уже были этой папкой.
Второе решение: (может быть легко сопряжено с первым для дополнительной полезности)
На рабочем столе создайте пакетный файл со следующим контентом.
@echo off
cmd /k cd "C:\your\file\path"
Это откроет окно командной строки, подобное тому, что вы пытались сделать.
Для тонны информации о командах Windows здесь: http://ss64.com/nt/
Ответ 13
этот код работает для меня
назовите его cmd.bat
@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop
Ответ 14
Создайте новый файл startCmdLine.bat в своем каталоге и поместите в него эту строку
call cmd
Вот и все. Теперь дважды щелкните файл .bat. Это работает для меня.
Вы можете заменить вызов на запуск, он также будет работать.
Ответ 15
Ссылаясь на ответ @Chris,
Мы также можем перейти в родительский каталог командного файла и выполнить команды, используя следующие
cd /d %~dp0..
<OTHER_BATCH_COMMANDS>
cmd.exe
Чтобы понять работу команды cd /d %~dp0..
, обратитесь к ссылке
Что означает команда cd/d% ~ dp0 в Windows
Ответ 16
вы можете попробовать:
shift + right click
затем нажмите "Открыть командную строку" здесь