Подтвердить что ты не робот

Cygwin + console2: запуск cygwin bash с пуском каталога

Я использую Console2 как обертку bash в Windows. Самое главное, это позволяет мне запустить новую вкладку bash в предопределенном каталоге проекта.

Теперь я хотел бы заменить командную строку Windows на Cygwin bash. Однако параметр "Startup Dir" в Console2 не соблюдается Cygwin.

В принципе, я вижу три подхода к решению:

  • Выделите , как параметр Console2 должен выглядеть как, чтобы Cygwin bash уважал его
  • Добавьте параметр запуска в Cygwin bash, установив каталог запуска
  • Автоматически запускать script после bash запуска, который меняет каталог

Поиск в документации Cygwin и остальной части Интернета я не смог найти решение ни одного из этих подходов. Я мог представить, что решение тривиально кому-то другому.:)

среда: Win XP, Консоль 2.00.146, Cygwin 1.7.7, GNU bash 3.2.51 (24)

4b9b3361

Ответ 1

Что касается последней точки маркера, отредактируйте свой ~/.bashrc и добавьте команду cd в конце.

Вместо этого вы можете попробовать это для своей первой маркерной точки: если ваша конфигурация Console2 для запуска Bash выглядит примерно так:

bash --login -i

измените его на:

bash --login -i -c 'cd somdir; exec bash'

Ответ 2

У меня была такая же проблема, я увидел ваш пост и нашел этот ответ:

  • Запустите программу установки Setup.exe Cygwin и добавьте пакет "chere"
  • В Console2 добавьте новую вкладку под названием "Bash" с оболочкой "C:\cygwin\bin\ bash". См. Снимок экрана.
  • Наконец, добавьте следующее в реестр: Код:

Редактор реестра Windows версии 5.00

[HKEY_CLASSES_ROOT\Directory\shell\Открыть Cygwin здесь...]

[HKEY_CLASSES_ROOT\Directory\shell\Открыть Cygwin Here...\command] @= "\" C:\Program Files\Console2\Console.exe\ "-t Bash -r \" /bin/xhere/bin/ bash.exe '% L'\""

Нашел это решение по адресу: http://www.e-texteditor.com/forum/viewtopic.php?p=8884

Ответ 3

  • В программе установки Cygwin добавьте пакет "chere" (содержит/bin/xhere script)
  • Используйте следующую команду оболочки в настройках Console2:

    C:\cygwin\bin\bash.exe -c '/bin/xhere/bin/ bash'

Оболочка будет запущена в текущем рабочем каталоге или в указанном "Startup Dir".

Ответ 4

У меня были некоторые проблемы с некоторыми из вышеперечисленных подходов (окно Console2 прикручивалось при использовании c:\cygwin\bin\ bash.exe в качестве оболочки, не отображающей мой фактический рабочий каталог).

Итак, я создал этот командный файл и использовал его как оболочку Console2:

C:\cygwin64\cygbash.bat:

C:\cygwin64\bin\bash --login -i  -c "/bin/xhere /bin/bash `cygpath -d '%CD%'`"

Ответ 5

Я попробовал варианты всего вышеперечисленного, но никто не работал. Это то, что сработало для меня с помощью Console2 v2.00.148:

1). Скопируйте Cygwin.bat в новый файл: Cygbash.bat.

2). Замените последнюю строку следующим образом: bash --login -i -c 'cd /cygdrive/c/; exec bash'

3). Перейдите в настройки Console2 и измените оболочку, чтобы указать на этот новый файл Cygbash.bat.

Вышеуказанное запустит Console2 в корневом каталоге вашего диска C. fyi - Я оригинальный плакат, просто забыл сначала войти в свою учетную запись.

Ответ 6

Что касается последней точки маркера, вы можете указать, например:

cd /cygdrive/d

в ~/.bash_profile Это будет достигнуто при использовании Console2, а также при запуске Cygwin.

Ответ 7

  • Измените директорию оболочки на:

    bash --login -i -c 'cd /cygdrive/c/...; exec /bin/bash'

  • Добавьте эту строку в конец C:\cygwin\home\USERNAME\.profile

    cd -