6

Я знаю, что в проводнике вы можете перейти в адресную строку и ввести cmd чтобы открыть командную строку для каталога, в котором вы находитесь. То, что я ищу, это способ сделать то же самое с Cygwin. Внутри cygwin я могу cd C: вырваться из папки установки и на любой диск, но я ищу быстрый способ открыть cygwin в проводнике по пути, по которому я уже иду.

Я добавил C:\cygwin в путь и могу запустить Cygwin.bat из любого места (даже адресной строки проводника), но он открывается в мой домашний каталог cygwin. Как я могу изменить эту летучую мышь, чтобы позволить то, что я хочу, чтобы она делала?

3 ответа3

1

Вы можете отредактировать ваш Cygwin.bat или, если хотите, создать второй пакетный файл, который будет выглядеть так ...

@echo off

C:
chdir %cd%

C:\cygwin\bin\bash.exe --login -i -c "cd '%cd%' && bash"

Запуск этого из Explorer должен дать вам то, что вы ищете.

1

Не совсем то, что вы просите, но очень полезна команда cheg cygwin, которая устанавливает контекстное меню для окон каталогов в проводнике, чтобы открыть командную строку (или приглашение rxvt, или приглашение mintty) на этом уровне каталога.

0

Я взял следующее от http://c2.com/cgi/wiki?BetterCygwinTerminal

//Make sure rxvt is part of your Cygwin install, and update your C:\cygwin\cygwin.bat to this:
@echo off
C:
chdir \cygwin\bin
start rxvt -sr -sl 10000 -fg white -bg black -fn fixedsys -fb fixedsys -tn cygwin -e /bin/bash --login -i

Поскольку файлы bat могут принимать параметры, я не знаю, хотите ли вы передать текущий каталог во время вызова или просто указать другой, но строку chdir выше вы хотите изменить. Для настройки во время разговора (напр. Cygwin.bat C:\code)

@echo off
C:
chdir %1
start rxvt -sr -sl 10000 -fg white -bg black -fn fixedsys -fb fixedsys -tn cygwin -e /bin/bash -login -i

Конечно, вам понадобится некоторая логика if else для параметра, если вы хотите реализовать обе опции, установить dir по умолчанию и также иметь возможность указать dir во время вызова.

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