Учитывая стандартную установку Cygwin для Windows XP, я хотел бы создать стандартный ярлык Explorer, который открывает оболочку bash, уже открытую в каталоге по моему выбору. Каталог является UNC-путем. Стандартный cygwin.bat не работает, потому что он вызывает cmd.exe, а cmd.exe не любит пути UNC. В идеале, он не запускает cmd.exe или любую другую оболочку для открытия bash. Я пытался манипулировать .bashrc и извлекать память из моих дней Unix, но, к сожалению, этого не хватает в наши дни. Различные решения, которые я пробовал, почти работают, но не совсем.
2 ответа
11
Я не играл с UNC-путями, но, как я полагаю, вы должны использовать прямые, а не обратные слеши. Для обычных дисков вы можете использовать /cygdrive/c
например, чтобы получить доступ к диску C.
В командном файле, чтобы открыть оболочку в корне C:
вы можете использовать:
c:\cygwin\bin\bash.exe --login -i -c 'cd "/cygdrive/c";bash'
Вас также может заинтересовать chere
контекстного меню для Open bash здесь:
1
Я добавил подпапку в реестр в HKEY_CLASSES_ROOT/Directory/shell
, добавил ключ Cygwin
с ключевой command
где значение команды
cmd.exe /k "E:\PATHTOCYGWIN\bin\bash --login -i -c "cd ""%L"";bash""