Чтобы сделать команды Cygwin доступными из bash
независимо от того, как вы их выполняете, а также из cmd
любой другой оболочки, убедитесь, что в Path
переменной среды bin
добавлен каталог Cygwin .
Перейти к Control Panel > System and Security > System
(стандартная горячая клавиша Win+Pause
), затем Advanced system settings > Environment variables
. Для всех пользователей отредактируйте системную Path
переменную, просто для своего пользователя - отредактируйте (создайте, если она не существует) пользовательскую Path
переменную.
Предполагая, cygwin
что установлен в C:\cygwin
(может быть cygwin64 для 64-битного Cygwin), добавьте C:\cygwin\bin
к Path
. Имейте в виду, что если вы используете системную Path
переменную, если вы добавляете Cygwin bin
в начале, некоторые команды Cygwin будут затенять встроенные (например, Cygwin find
будет использоваться вместо Windows ').find
). Я предпочитаю делать это, но если вы этого не сделаете, добавьте Cygwin's bin
в конце вашего Path
.
Поскольку в большинстве других ответов также говорится о настройке ConEmu, я также выскажу свое личное мнение.
Я предпочитаю запускать оболочку без входа в систему. Например, в Linux вы получаете оболочку входа при входе в систему с текстовой консоли или через ssh и интерактивную оболочку без регистрации при открытии эмулятора терминала (xterm, konsole и т. Д.).
Моя задача {Bash} имеет /dir "%CD%"
параметры задачи для установки рабочего каталога в рабочий каталог текущей вкладки (например, если задача bash из Far). Команда для запуска bash:
%ConEmuDrive%\cygwin\bin\bash.exe -new_console:C:"%ConEmuDrive%\cygwin\Cygwin.ico"
Параметры уведомления --login -i
опущены, оболочка будет запускаться как интерактивная оболочка без входа в систему (поскольку она не имеет аргументов без параметров и без опции -c, а ее stdin и stdout подключены к терминалам, обратитесь к разделу INVOCATION на man-странице bash для получения дополнительной информации. объяснение). Он будет читать и выполнять команды из пользовательского файла rcfile ~/.bashrc
(нет /etc/profile
или ~/.bash_profile
как оболочка входа в систему, поэтому вам не нужно, set CHERE_INVOKING=1
что относится только к /etc/profile
). Поэтому поместите ваши псевдонимы пользователя, параметры оболочки, дополнительные переменные окружения и т. Д. В ~ / .bashrc, где они по праву принадлежат.