Para que los comandos de Cygwin estén disponibles desde bash
, independientemente de cómo lo ejecute, así como desde cmd
cualquier otro shell, asegúrese de que su Path
variable de entorno tenga bin
agregado el directorio de Cygwin .
Vaya a Control Panel > System and Security > System
(tecla de acceso rápido estándar Win+Pause
), entonces Advanced system settings > Environment variables
. Para todos los usuarios, edite la Path
variable del sistema , solo para su usuario: edite (cree si no existe) la Path
variable de usuario .
Suponiendo que cygwin
esté instalado en C:\cygwin
(podría ser cygwin64 para Cygwin de 64 bits), agregue C:\cygwin\bin
a Path
. Tenga en cuenta que si usa la Path
variable del sistema , si agrega Cygwin bin
al principio, algunos comandos de Cygwin sombrearán los incorporados (por ejemplo, Cygwin find
se usará en lugar de Windows 'find
) Prefiero hacerlo, pero si no lo haces, agrega Cygwin's bin
al final de tu Path
.
Como la mayoría de las otras respuestas también hablan sobre la configuración de ConEmu, también daré mi opinión personal.
Prefiero ejecutar un shell sin inicio de sesión. Por ejemplo, en Linux obtienes un shell de inicio de sesión cuando inicias sesión en la consola de texto o mediante ssh, y un shell interactivo sin inicio de sesión cuando abres un emulador de terminal (xterm, konsole, etc.).
Mi tarea {Bash} tiene /dir "%CD%"
parámetros de tarea para establecer el directorio de trabajo en el directorio de trabajo de la pestaña actual (por ejemplo, si la tarea bash es Far). El comando para iniciar bash:
%ConEmuDrive%\cygwin\bin\bash.exe -new_console:C:"%ConEmuDrive%\cygwin\Cygwin.ico"
--login -i
Se omiten las opciones de aviso , el shell comenzará como un shell interactivo sin inicio de sesión (ya que no tiene argumentos sin opciones y sin la opción -c, y sus stdin y stdout están conectados a terminales, consulte la sección de INVOCACIÓN de la página de manual de bash para obtener más información). explicación). Leerá y ejecutará comandos del usuario rcfile ~/.bashrc
(no /etc/profile
o ~/.bash_profile
como lo haría un shell de inicio de sesión, por lo que no es necesario para lo set CHERE_INVOKING=1
que solo es relevante con respecto a /etc/profile
). Por lo tanto, coloque sus alias de usuario, opciones de shell, variables de entorno adicionales, etc. a ~ / .bashrc, donde pertenecen legítimamente.