Откройте Cygwin в определенной папке - PullRequest
214 голосов
/ 09 марта 2012

Как создать ярлык Cygwin, который будет открывать Cygwin в определенной папке? Это избавит от необходимости набирать

cd /cygdrive/c/Users/Tom/Desktop/

каждый раз, когда я запускаю Cygwin.

Ответы [ 27 ]

382 голосов
/ 17 августа 2012

Когда вы устанавливаете Cygwin (или, если вы уже установили его, загружаете его снова и запускаете установку заново для запуска обновления), убедитесь, что вы выбрали пакет chere в категории «Оболочки».

После запуска Cygwin откройте терминал Cygwin (как администратор) и введите команду: chere -i -t mintty -s bash.

Теперь вы должны иметь «Bash Prompt Here» в контекстном меню Windows правой кнопкой мыши.

( mintty является терминалом Cygwin по умолчанию. Если вы не выберете его с опцией -t, ваша «Bash Prompt Here» будет использовать тот же терминал, что и командная строка Windows, что предотвращает горизонтальное изменение размеров.)

92 голосов
/ 21 октября 2013

Вот что я использую.Для этого не требуется chere пакет или обработка реестра.Работает в Windows 7.

Перейдите в папку «Отправить»:

C:\Users\<your_user_name>\AppData\Roaming\Microsoft\Windows\SendTo

Создайте ярлык с именем Bash Here, имеющий его в поле Target:

C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico  C:\cygwin\bin\bash.exe  -l -c "cd \"$0\" ; exec bash"

В проводнике Windows вы щелкаете правой кнопкой мыши по папке и выбираете Send To > Bash Here.

И вот обратный прием, открывающий проводник Windows в вашем текущем каталоге bash.Создайте этот псевдоним:

alias winx='/cygdrive/c/Windows/explorer.exe /e,\`cygpath -w .\`'

Примечание: часть cygpath -w . выше заключена в галочки.

Теперь просто введите winx в приглашении bash, и там появится Win Explorer.

Примечание. Если winx направляет вас в папку с документами, попробуйте

alias winx='/cygdrive/c/Windows/explorer.exe /e,`cygpath -w $PWD`'
30 голосов
/ 21 ноября 2014

С терминала cygwin выполните эту команду:

echo "cd your_path" >> ~/.bashrc

. Сценарий .bashrc запускается при открытии нового сеанса bash.Приведенный выше код с изменением каталога your_path при открытии нового сеанса cygwin.

28 голосов
/ 31 июля 2012

Я сделал .reg файл, который помещает опцию «Открыть Cygwin Here» в контекстное меню, вызываемое правой кнопкой мыши. Это зависит от пакета Cygwin «chere», который вы можете установить с помощью apt-cyg , если вы не установили его в начальной настройке.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin_bash]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Directory\Background\shell\cygwin_bash\command]
@="C:\\cygwin\\bin\\mintty.exe -e /bin/xhere /bin/bash.exe"
17 голосов
/ 19 декабря 2013

Для cygwin64 или установок без chere вы можете использовать следующую команду в записи реестра (при условии, что windows из-за вашего пути, а также при условии, что каталог установки cygwin - c: \ cygwin64)

C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd "`cygpath "%V"`"; bash'

Работает в WindowsФайл реестра 7 и 8 доступен для скачивания здесь: http://tomkay.me/blog/Cygwin64---Open-Here-18

Windows Registry Editor Version 5.00
; Open cygwin to folder
; http://tomkay.me - Tom Kay

[HKEY_CLASSES_ROOT\Folder\shell\open_cygwin]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Folder\shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"

[HKEY_CLASSES_ROOT\Directory\Background\shell\open_cygwin]
@="Open Cygwin Here"

[HKEY_CLASSES_ROOT\Directory\Background\shell\open_cygwin\command]
@="C:\\cygwin64\\bin\\mintty.exe /bin/sh -lc 'cd \"`cygpath \"%V\"`\"; bash'"
12 голосов
/ 09 марта 2012

Если вы хотите, чтобы этот каталог использовался по умолчанию, просто добавьте оператор cd в файл ~/.profile.

Я обычно использую этот метод для установки моего обычного каталога, а также определяю псевдонимы для моих общих случаев:

alias tom="cd /users/tom"

или ваш эквивалент. Это позволяет мне очень быстро менять каталоги.

8 голосов
/ 24 октября 2014

Я использую и Icon для запуска моего Cygwin без пакета chere.

  1. Создайте ярлык на моем рабочем столе для терминала cygwin.
  2. R-щелкните значок и выберите свойства.
  3. На вкладке ярлыков используйте это для ЦЕЛИ: C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
  4. Для START IN, укажите путь к папке / каталогу, куда вы хотите запустить Cygwin. т.е. C:\some\dir\name\here
8 голосов
/ 01 октября 2015

Как сказал two7s_clash, вам сначала нужно установить chere пакет и настроить mintty:

  1. Открыть терминал Cygwin от имени администратора
  2. apt-cyg install chere
  3. chere -i -t mintty

Теперь вы можете открыть cygwin в определенном каталоге с помощью щелчка правой кнопкой мыши в проводнике Windows (контекстное меню) и выбрать «Bash Prompt Here».

Вы также можете открытьcygwin из определенного каталога с помощью командной строки Windows:

  1. Открытие командной строки Windows
  2. Перемещение (cd) в пользовательский каталог
  3. Выполнение C:\cygwin64\bin\mintty.exe C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l

    Эта команда откроет cygwin с текущим каталогом, взятым из командной строки.

FreeCommander

Эту команду также можно использовать для открытия cygwin из пользовательскихфайловый менеджер, например FreeCommander.

Чтобы открыть cygwin с текущим каталогом, взятым из FreeCommander, выполните следующие действия:

  1. Инструменты -> Инструменты избранного -> Редактировать любимые инструменты ... (Ctrl+ Shift + Y)
  2. Добавить новую панель инструментов (+ значок), ярлык: Вставить

    • Имя: cygwin
    • Программа или папка: C:\cygwin64\bin\mintty.exe
    • Начальная папка: %ActivDir%
    • Параметр: C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l

Вы можете добавить собственный ярлык для открытия cygwin из FreeCommander:

  1. Инструменты -> Определитьсочетания клавиш
  2. Прокрутите вниз до «Любимый инструмент 01» (или «Любимый инструмент N»)
  3. Назначьте новую комбинацию клавиш: я использую Ctrl + Shift + T

Отличная ссылка: MinTTY Wiki, статья Советы: запуск в определенном каталоге

5 голосов
/ 13 января 2019

Чтобы создать ярлык Windows, который запускает терминал Cygwin в каталоге по вашему выбору, попробуйте следующее:

  • Щелкните правой кнопкой мыши на рабочем столе Windows, выберите «Создать»,и затем выберите «Ярлык».

  • Для определения местоположения элемента введите следующий текст, изменив путь mintty, если необходимо, и подставив имя нужного каталога, где указано.

    C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd DESIRED-DIRECTORY; exec bash'
    

    Например, OP будет использовать следующий текст:

    C:\cygwin64\bin\mintty.exe /bin/sh -lc 'cd /cygdrive/c/Users/Tom/Desktop/; exec bash'
    
  • Нажмите «Далее».

  • Введите желаемое имя дляярлык и нажмите «Готово».

На рабочем столе можно разместить несколько ярлыков для открытия терминалов Cygwin в различных часто используемых каталогах.

Вдохновленный решением, опубликованным на Как открыть оболочку Cygwin в определенном каталоге из Netbeans? на superuser.com .

4 голосов
/ 12 июня 2016

Найдите файл Cygwin.bat и создайте содержимое следующим образом:

@echo off
set newpath=%cd:\=/%
pushd "%~dp0"
chdir bin
bash --login -i -c "cd \"%newpath%\"; exec bash"

Добавьте путь к cygwin.bat в среду PATH.

Теперь в любой папке вы можете ввести адресную строку:

cygwin

Также вы можете ввести его, когда вы в cmd.exe

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...