Nota: es posible que el paquete chere deba ser instanciado con privilegios de administrador. Si esto lo atrapa y siente la tentación de usarlo sudo, es posible que no obtenga el resultado esperado. En este caso, inicie sesión como usuario administrador en la máquina Windows.
dreftymac
Respuestas:
410
Cuando instale Cygwin (o si ya lo ha instalado, descárguelo nuevamente y comience la configuración nuevamente para ejecutar una actualización), asegúrese de seleccionar el cherepaquete en la categoría "Shells".
Después se puso en marcha Cygwin, abre un terminal de Cygwin (como administrador) y escriba el comando: chere -i -t mintty -s bash.
Ahora debería tener "Bash Prompt Here" en el menú contextual del botón derecho de Windows.
( Mintty es el terminal predeterminado de Cygwin. Si no lo elige con la -topción, su "Bash Prompt Here" usará el mismo terminal que el símbolo del sistema de Windows, lo que evita el cambio de tamaño horizontal).
Impresionante hallazgo, gracias! Descubrí que puede especificar el terminal que desea abrir usando -t, por ejemplo, para abrir mintty que usachere -i -t mintty
Kevin Condon
29
Acabo de probar con 64 bits cygwin (1.7.27) y parece que ahora existe chere. consejo profesional: recuerde iniciar el terminal cygwin con privilegios de administrador.
BuildTheRobots
11
Una cosa más a tener en cuenta. Si ya hiciste esto chere -i -t mintty -fpara forzar la sobrescritura. También necesitará ejecutar cygwin como administrador también.
Greg Jennings
29
Hubo problemas de permisos en W7x64 (Error (5): acceso denegado. Hive no se puede escribir). Se resolvió iniciando Cygwin como administrador.
DmitrySandalov
17
Cygwin no tenía un shell predeterminado en mi caso, por lo que agregar -s bashpara hacer chere -i -t mintty -s bashesto funcionó para mí
Bryce Guinta
97
Esto es lo que uso. No requiere chereajustes de paquete o registro. Funciona en Windows 7.
Muy buen truco, pero el winxalias no funcionó en mi configuración de Cygwin. Tuve que quitar las dos barras invertidas y reemplazar .con $PWDpara que funcione.
not2qubit
¿Qué sucede si el acceso directo (adaptado para usar la ruta Cygwin64 de mi instalación) abre cygwin en mi carpeta de usuario? :( ¿Tal vez esto solo funciona con Cygwin de 32 bits?
Alex Hall
Este también está funcionando para míalias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
Wakan Tanka
1
En cygwin 2.6.0 (en Win 7 x64) se puede hacer mucho más fácil: cygstart .abrir Explorer con la carpeta actual, o cualquier sintaxis de carpeta cygstart .., cygstart /your/pathetc ...
244an
2
Advertencia: C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bashmantiene el identificador de archivo abierto en el $0directorio, incluso después de cambiar el directorio de trabajo a otra cosa. Lo que es peor, la copia de generación de la ventana ( ALT+F2), incluso cuando ya ha cambiado el directorio de trabajo, abre otro identificador de archivo $0. Esto puede interferir con algunas operaciones que pueden querer eliminar / modificar $0en cualquier proceso. Si obtiene el error 'Permiso denegado' al acceder, $0esta podría ser la causa
mate
33
Desde el terminal cygwin, ejecute este comando:
echo "cd your_path" >> ~/.bashrc
El script .bashrc se ejecuta cuando abre una nueva sesión de bash. El código anterior con cambio en el directorio your_path cuando abre una nueva sesión de cygwin.
Esta no es la respuesta, ya que no crea un acceso directo que use dicho directorio, como lo requiere la pregunta, cambia el comportamiento de todos los métodos para iniciar el shell Cygwin. No debe cambiar una configuración global (o perfil de inicio de sesión) para resolver un problema local.
Ben Voigt
Una vez utilicé exactamente este método para agregar un usuario al archivo de contraseña, dejando accidentalmente uno de los >caracteres. Luego me desconecté :-)
paxdiablo
@paxdiablo ouch
bschwagg
30
Creé un archivo .reg que pone la opción "Abrir Cygwin aquí" en el menú contextual del botón derecho. Depende del paquete "chere" de Cygwin, que puede instalar utilizando apt-cyg si no lo instaló en la configuración inicial.
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"
Para aquellos que se preguntan cómo usar esto, simplemente copie el texto de fondo gris y póngalo en un archivo de texto llamado "foo.reg" y haga doble clic en él.
Andrew Moylan
3
+1 la mejor solución aquí. Y gracias por mencionar apt-cygque no conocía esta herramienta
user11153
Esto era exactamente lo que estaba buscando, e incluso me ayudó con otras cosas porque incluso el sitio de Microsoft no me dio el mismo resultado.
FilBot3
Tuve que cambiar a "cygwin" pero recibo este error: "Error al ejecutar / bin / xhere: No existe tal archivo o directorio"
Totty.js
@ Totty.js ¿estás seguro de que has instalado el paquete 'chere' en Cygwin?
Jeutnarg
17
Para cygwin64 o instalaciones sin chere, puede usar el siguiente comando en una entrada del registro (suponiendo que Windows se debe a su ruta, también suponiendo que el directorio de instalación de cygwin es c: \ cygwin64)
¿Puede explicar por qué tiene 3 (x2) entradas de registro?
not2qubit
1
son para contextos de directorio, unidad y fondo
Tom Kay
Finalmente, una solución que funcionó para mí, aunque tengo algunos problemas para entenderla por completo ;-) [el 'bash' después de 'exec bash']. Sugerencia: puede reemplazar las 3 entradas con 1: 'Carpeta' en lugar de 'Directorio', 'Unidad' y 'Fondo'.
t0r0X
con solo 'Carpeta', el enlace aparece en el menú contextual de una unidad, pero no se ejecuta. Sin embargo, he podido reducir a 2 entradas con 'Carpeta' y 'Directorio \ Fondo'
Tom Kay
1
Para emacs: "C: \\ cygwin \\ bin \\ mintty.exe -i /Cygwin-Terminal.ico / bin / bash -l -c 'emacs \" cygpath \"%V\"\ ";'"
Jan Matousek el
12
Si desea tener ese directorio como predeterminado, simplemente agregue una cddeclaración a su~/.profile archivo.
Lo que tiendo a hacer es usar ese método para establecer mi directorio habitual, además de definir alias para mis casos comunes también:
alias tom="cd /users/tom"
o tu equivalente. Esto me permite cambiar directorios muy rápido.
¿Ese alias también debe agregarse al ~/.profilearchivo, o simplemente ejecutarse una vez?
iono
2
@tomeoftom, si solo ejecuta eso dentro de un shell, solo afectará a ese shell. No afectará a otros que comiences. Por lo tanto, si desea que esté siempre disponible, debe ponerlo en uno de sus archivos de inicio (de los cuales ~/.profilees una posibilidad).
paxdiablo
no funcionó para mí cuando lo puse en ~ / .profile, pero ~ / .bashrc funcionó.
zupa
@zupa, las reglas sobre qué archivos de inicio se obtienen son razonablemente complicados (aunque todo está en la bashpágina del manual si profundiza lo suficiente). Es por eso que dije .profilecomo una posibilidad.
paxdiablo
.profile finalmente obtiene .bashrc, por lo que es posible que desee agregar ese comando a bashrc. (.profile no funcionó para mí)
laertis
8
Uso e Icon para iniciar mi cygwin sin el cherepaquete.
Crear un acceso directo en mi escritorio para el terminal cygwin.
Haga clic con el botón derecho en el icono y seleccione propiedades.
En la pestaña de acceso directo, use esto para el OBJETIVO:
C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
Para INICIAR, coloque la ruta del directorio / carpeta donde desea iniciar cygwin. es decirC:\some\dir\name\here
ok 2 cosas 1. agregar -cen "Destino" no hace ninguna diferencia siempre que proporcione una ruta en "Iniciar en" 2. esta solución crea un problema con PATH. cygwin no puede anteponerse /usr/local/bin:/usr/binen la RUTA del sistema, dejando incapaz de invocar algunos de sus binarios. La configuración probablemente reside en /etc/profile>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; entonces `
laertis
8
Como dijo two7s_clash, primero debe instalar el cherepaquete y configurar mintty:
Abra la terminal Cygwin como administrador
apt-cyg install chere
chere -i -t mintty
Ahora puede abrir cygwin en un directorio específico con un clic derecho del mouse en el Explorador de Windows (Menú contextual) y seleccione "Bash Solicitar aquí".
También puede abrir cygwin desde un directorio específico utilizando el símbolo del sistema de Windows:
Para crear un acceso directo de Windows que inicie un terminal Cygwin en un directorio de su elección, intente lo siguiente:
Haga clic con el botón derecho en el escritorio de Windows, seleccione 'Nuevo' y luego seleccione 'Acceso directo'.
Para la ubicación del elemento, ingrese el siguiente texto, cambiando la minttyruta según sea necesario y sustituyendo el nombre del directorio deseado donde se indica.
Cuando se necesita una nueva instalación, creo una "variable de entorno de usuario" de Windows con el nombre HOMEy le asigno la ruta dondequiera que residan "Mis documentos".
El instalador de cygwin detecta la HOMEvariable, la traduce automáticamente a un cygpath y la selecciona como mi directorio ~.
Esto ha funcionado bien para cada estación de trabajo que he usado profesionalmente los últimos 5 años (aproximadamente 3 o 4, Win7). Siempre he sido el único usuario en estas máquinas, no puedo decir cuál es el efecto.
Creo que un requisito previo para la existencia de xhere es la instalación de chere, como se menciona en otras respuestas.
Samuel
1
En mi máquina Windows no estaba tomando:
chere -i -t mintty
Debido a que el mintty shell no estaba disponible, pero es posible que tenga la opción de varios otros shells como ash bash cmd dash mksh pdksh posh tcsh zsh passwd.
Mintty no es un shell, es un emulador de terminal.
Palec
¿Cómo responde esto a la pregunta original?
Leigh
Esto proporcionará la ayuda a aquellos que no tienen poca importancia en su sistema y obtienen un error al intentar intentar la solución provista anteriormente, también seguí la solución provista anteriormente pero no funcionó en mi máquina Windows, pero mi respuesta resolvió el problema.
user3065757
1
Simplemente puede abrir la terminal de cygwin y escribir: cd y después de arrastrar y soltar la carpeta que desea finalizar ¡ingrese!
Si bien esto no resuelve completamente la pregunta, es un consejo muy útil. Gracias.
RoG
1
En la respuesta que usa el registro, descubrí que en Windows 2008 R2 SP1, debe eliminar el fondo de la ruta. Además, dado que chere y xhere no son parte de cygwin64, aquí hay una solución que funciona para ambos, combinando el registro y las soluciones Enviar a. Reemplace 'E: \ cygwin64' con su ubicación de instalación:
He creado el archivo por lotes y lo puse en el directorio / bin de Cygwin. Este script fue desarrollado de manera que permite instalar / desinstalar las entradas del registro para abrir carpetas y unidades seleccionadas en Cygwin. Para más detalles, consulte el enlace http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
Actualización: esta solución hace lo mismo que las primeras sugerencias, pero todas las manipulaciones con el Registro de Windows están ocultas dentro del script.
También tuve un problema con git, que solía "robar" mis comandos cygwin, por lo que necesitaba ejecutarlo, C:\cygwin\bin\mintty.exe -
pero después de instalarlo cherey ejecutarlo chere -i -t mintty -f como administrador (ver arriba), simplemente puede usar: C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
agregué esto en Total Commander como botón personalizado (derecha haga clic en el panel> agregar ...) y funciona muy bien.
Cree un archivo bash, digamos move.shque tiene el siguiente código.
C:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Esto inicia Cygwin y ejecuta el runFile.shpresente en el directorio bin de Cygwin. Suponga que desea navegar a un directorio específico, digamos, E:\code
luego runFile.sh tiene el siguiente código.cd E:
cd code
Finalmente una respuesta que es independiente del propio Cygwin.
Esto utiliza el hecho de que, si estoy en el directorio C:\\Cooly llamar al comando C:\\Cygwin\\bin\\mintty.exe, minttyse abrirá automáticamente en el directorio actual, es decir, C:\\Cool.
Primero, deberá crear el archivo C:\\Cygwin\\silent_run.vbscon los siguientes contenidos:
Function EnquoteString(argument)
EnquoteString = Chr(34) & argument & Chr(34)
End Function
arglist = ""
With WScript.Arguments
For Each arg In .Unnamed
' Wscript.Echo "Unnamed: " & arg
If InStr(arg, " ") > 0 Then
' arg contains a space
arglist = arglist & " " & EnquoteString(arg)
Else
arglist = arglist & " " & arg
End If
Next
End With
CreateObject("Wscript.Shell").Run Trim( arglist ), 0, False
Luego, para instalar esta respuesta, utilizará un archivo de Registro de Windows. Para eso, simplemente coloque el contenido del siguiente archivo en un archivo llamadoC:\\Cygwin\\AddMinttyToContextMenu.reg
Ahora, corrija todas las rutas codificadas, es decir, C:\\Cygwina la ubicación real donde está instalada su instalación Cygwin.
Luego, simplemente abra el archivo C:\\Cygwin\\AddMinttyToContextMenu.regpara instalar sus nuevas entradas de registro y listo.
El archivo C:\\Cygwin\\AddMinttyToContextMenu.regfunciona abriendo primero a cmd.exe, cambiando al directorio en el que se encuentra y luego llamando C:\\Cygwin\\silent_run.vbspara abrir el C:\\Cygwin\\bin\\mintty.exeterminal con las opciones de línea de comando -w max, es decir, para abrirlo al máximo.
Se C:\\Cygwin\\silent_run.vbsrequiere el script para abrir el C:\\Cygwin\\bin\\mintty.exeterminal sin mantener cmd.exeabierto el primero que abrimos.
La primera entrada de C:\\Cygwin\\AddMinttyToContextMenu.regno se usa C:\\Cygwin\\silent_run.vbsporque, de forma predeterminada, las HKEY_CLASSES_ROOT\Directory\Background\shellclaves ya están abiertas en el directorio actual, entonces, podemos llamar C:\\Cygwin\\bin\\mintty.exedirectamente para que funcione de inmediato.
@echo off
C:
SET mypath=%~dp0
c:\cygwin\bin\bash -c "cd '%mypath%'; export CHERE_INVOKING=1; exec /bin/bash --login -i"
Copie los comandos anteriores en un archivo de texto y guárdelo como .bat en cualquiera de "su carpeta de interés". Debería abrir cygwin en "su carpeta de interés".
basado en la respuesta @LindseyD Creé un archivo BAT simple, que abre cygwin en el directorio actual, puede ser útil (para mí lo es). Suponiendo que tiene el directorio bin de cygwin en PATH.
FOR /F %%x IN ('sh -c pwd') DO bash -l -i -c 'cd %%x; exec bash'
sudo
, es posible que no obtenga el resultado esperado. En este caso, inicie sesión como usuario administrador en la máquina Windows.Respuestas:
Cuando instale Cygwin (o si ya lo ha instalado, descárguelo nuevamente y comience la configuración nuevamente para ejecutar una actualización), asegúrese de seleccionar el
chere
paquete en la categoría "Shells".Después se puso en marcha Cygwin, abre un terminal de Cygwin (como administrador) y escriba el comando:
chere -i -t mintty -s bash
.Ahora debería tener "Bash Prompt Here" en el menú contextual del botón derecho de Windows.
( Mintty es el terminal predeterminado de Cygwin. Si no lo elige con la
-t
opción, su "Bash Prompt Here" usará el mismo terminal que el símbolo del sistema de Windows, lo que evita el cambio de tamaño horizontal).fuente
-t
, por ejemplo, para abrir mintty que usachere -i -t mintty
chere -i -t mintty -f
para forzar la sobrescritura. También necesitará ejecutar cygwin como administrador también.-s bash
para hacerchere -i -t mintty -s bash
esto funcionó para míEsto es lo que uso. No requiere
chere
ajustes de paquete o registro. Funciona en Windows 7.Vaya a su carpeta "Enviar a":
Cree un acceso directo llamado
Bash Here
tener esto en elTarget
campo:En el Explorador de Windows, hace clic derecho en una carpeta y selecciona
Send To > Bash Here
.Y aquí está el truco opuesto, abrir un Explorador de Windows en su directorio bash actual. Crea este alias:
Nota: la
cygpath -w .
parte de arriba está encerrada en tics.Ahora solo escriba
winx
en el indicador de bash, y aparecerá un Win Explorer allí.Nota: si winx lo dirige a su carpeta de documentos, intente
fuente
winx
alias no funcionó en mi configuración de Cygwin. Tuve que quitar las dos barras invertidas y reemplazar.
con$PWD
para que funcione.alias winx='/cygdrive/c/Windows/explorer.exe /e,$(cygpath -wa .)'
cygstart .
abrir Explorer con la carpeta actual, o cualquier sintaxis de carpetacygstart ..
,cygstart /your/path
etc ...C:\cygwin\bin\mintty.exe -i /Cygwin-Terminal.ico C:\cygwin\bin\bash.exe -l -c "cd \"$0\" ; exec bash
mantiene el identificador de archivo abierto en el$0
directorio, incluso después de cambiar el directorio de trabajo a otra cosa. Lo que es peor, la copia de generación de la ventana (ALT+F2
), incluso cuando ya ha cambiado el directorio de trabajo, abre otro identificador de archivo$0
. Esto puede interferir con algunas operaciones que pueden querer eliminar / modificar$0
en cualquier proceso. Si obtiene el error 'Permiso denegado' al acceder,$0
esta podría ser la causaDesde el terminal cygwin, ejecute este comando:
echo "cd your_path" >> ~/.bashrc
El script .bashrc se ejecuta cuando abre una nueva sesión de bash. El código anterior con cambio en el directorio your_path cuando abre una nueva sesión de cygwin.
fuente
>
caracteres. Luego me desconecté :-)Creé un archivo .reg que pone la opción "Abrir Cygwin aquí" en el menú contextual del botón derecho. Depende del paquete "chere" de Cygwin, que puede instalar utilizando apt-cyg si no lo instaló en la configuración inicial.
fuente
apt-cyg
que no conocía esta herramientaPara cygwin64 o instalaciones sin chere, puede usar el siguiente comando en una entrada del registro (suponiendo que Windows se debe a su ruta, también suponiendo que el directorio de instalación de cygwin es c: \ cygwin64)
Funciona en el archivo de registro de Windows 7 y 8 disponible para descargar aquí: http://tomkay.me/blog/Cygwin64---Open-Here-18
fuente
cygpath \"%V\"
\ ";'"Si desea tener ese directorio como predeterminado, simplemente agregue una
cd
declaración a su~/.profile
archivo.Lo que tiendo a hacer es usar ese método para establecer mi directorio habitual, además de definir alias para mis casos comunes también:
o tu equivalente. Esto me permite cambiar directorios muy rápido.
fuente
~/.profile
archivo, o simplemente ejecutarse una vez?~/.profile
es una posibilidad).bash
página del manual si profundiza lo suficiente). Es por eso que dije.profile
como una posibilidad.Uso e Icon para iniciar mi cygwin sin el
chere
paquete.C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -c 'cd'
C:\some\dir\name\here
fuente
-c
en "Destino" no hace ninguna diferencia siempre que proporcione una ruta en "Iniciar en" 2. esta solución crea un problema conPATH
. cygwin no puede anteponerse/usr/local/bin:/usr/bin
en la RUTA del sistema, dejando incapaz de invocar algunos de sus binarios. La configuración probablemente reside en/etc/profile
>> `if [$ {CYGWIN_NOWINPATH-addwinpath} =" addwinpath "]; entonces `Como dijo two7s_clash, primero debe instalar el
chere
paquete y configurar mintty:apt-cyg install chere
chere -i -t mintty
Ahora puede abrir cygwin en un directorio específico con un clic derecho del mouse en el Explorador de Windows (Menú contextual) y seleccione "Bash Solicitar aquí".
También puede abrir cygwin desde un directorio específico utilizando el símbolo del sistema de Windows:
cd
) al directorio personalizadoEjecutar
C:\cygwin64\bin\mintty.exe C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Este comando abrirá cygwin con el directorio actual tomado del símbolo del sistema.
FreeCommander
Este comando también se puede usar para abrir cygwin desde el administrador de archivos personalizado, como FreeCommander.
Para abrir cygwin con el directorio actual tomado de FreeCommander, haga lo siguiente:
Agregar una nueva barra de herramientas (+ icono), acceso directo: insertar
C:\cygwin64\bin\mintty.exe
%ActivDir%
C:\cygwin64\bin\env.exe CHERE_INVOKING=1 C:\cygwin64\bin\bash.exe -l
Puede agregar un acceso directo personalizado para abrir cygwin desde FreeCommander:
Gran referencia: MinTTY Wiki, artículo Consejos: Comenzando en un directorio particular
fuente
Para crear un acceso directo de Windows que inicie un terminal Cygwin en un directorio de su elección, intente lo siguiente:
Haga clic con el botón derecho en el escritorio de Windows, seleccione 'Nuevo' y luego seleccione 'Acceso directo'.
Para la ubicación del elemento, ingrese el siguiente texto, cambiando la
mintty
ruta según sea necesario y sustituyendo el nombre del directorio deseado donde se indica.Por ejemplo, el OP usaría el siguiente texto:
Haga clic en Siguiente'.
Ingrese el nombre deseado para el acceso directo y haga clic en 'Finalizar'.
Se pueden colocar múltiples accesos directos en el escritorio para abrir terminales Cygwin en varios directorios a los que se accede con frecuencia.
¿Inspirado por la solución publicada en Cómo abrir un shell Cygwin en un directorio específico de Netbeans? en superuser.com .
fuente
Busque el archivo Cygwin.bat y cree contenido como este:
Agregue la ruta a cygwin.bat al entorno PATH.
Ahora en cualquier carpeta puede escribir en la barra de direcciones:
También puede escribirlo cuando está en cmd.exe
fuente
Usé las siguientes líneas de código para iniciar zsh en el directorio actual en Win7.
tenga en cuenta que usé% V en lugar de% L o% 1 (ya que ambos no funcionaron para mí)
fuente
Cuando se necesita una nueva instalación, creo una "variable de entorno de usuario" de Windows con el nombre
HOME
y le asigno la ruta dondequiera que residan "Mis documentos".El instalador de cygwin detecta la
HOME
variable, la traduce automáticamente a un cygpath y la selecciona como mi directorio ~.Esto ha funcionado bien para cada estación de trabajo que he usado profesionalmente los últimos 5 años (aproximadamente 3 o 4, Win7). Siempre he sido el único usuario en estas máquinas, no puedo decir cuál es el efecto.
fuente
Hice un script de edición de registro para abrir Cygwin en cualquier carpeta en la que haga clic con el botón derecho. Está en mi GitHub.
Aquí está mi GitHub
RegEdit
Código de muestra de Github para máquinas de 64 bits:fuente
Abra el terminal Cygwin como administrador
En powershell (usando chocolate):
En cygwin se instalará el menú del botón derecho
Ahora puede hacer clic derecho y usar "Bash Prompt Here" en cualquier carpeta.
fuente
Puede agregar el icono al shell agregando un
Icon
conjunto de campos a la ruta a suCygwin.ico
archivo.fuente
En mi máquina Windows no estaba tomando:
chere -i -t mintty
Debido a que el mintty shell no estaba disponible, pero es posible que tenga la opción de varios otros shells como ash bash cmd dash mksh pdksh posh tcsh zsh passwd.
entonces usé:
chere -i -s bash
fuente
Simplemente puede abrir la terminal de cygwin y escribir: cd y después de arrastrar y soltar la carpeta que desea finalizar ¡ingrese!
fuente
En la respuesta que usa el registro, descubrí que en Windows 2008 R2 SP1, debe eliminar el fondo de la ruta. Además, dado que chere y xhere no son parte de cygwin64, aquí hay una solución que funciona para ambos, combinando el registro y las soluciones Enviar a. Reemplace 'E: \ cygwin64' con su ubicación de instalación:
fuente
Esta es la única solución de registro de Cygwin64 que funcionó para mí en Windows 8.1:
Asegúrese de modificar su ruta 'C: \ cygwin64' según sea necesario.
fuente
He creado el archivo por lotes y lo puse en el directorio / bin de Cygwin. Este script fue desarrollado de manera que permite instalar / desinstalar las entradas del registro para abrir carpetas y unidades seleccionadas en Cygwin. Para más detalles, consulte el enlace http://with-love-from-siberia.blogspot.com/2013/12/cygwin-here.html .
Actualización: esta solución hace lo mismo que las primeras sugerencias, pero todas las manipulaciones con el Registro de Windows están ocultas dentro del script.
Ejecute el comando para instalar
Ejecute el comando para desinstalar
fuente
También tuve un problema con git, que solía "robar" mis comandos cygwin, por lo que necesitaba ejecutarlo,
C:\cygwin\bin\mintty.exe -
pero después de instalarlo
chere
y ejecutarlochere -i -t mintty -f
como administrador (ver arriba), simplemente puede usar:C:\cygwin\bin\mintty.exe -e /bin/xhere /bin/bash.exe "."
agregué esto en Total Commander como botón personalizado (derecha haga clic en el panel> agregar ...) y funciona muy bien.
fuente
Cree un archivo bash, digamos
move.sh
que tiene el siguiente código.C:\cygwin64\bin\run.exe -p /bin bash runFile.sh
Esto inicia Cygwin y ejecuta elrunFile.sh
presente en el directorio bin de Cygwin. Suponga que desea navegar a un directorio específico, digamos,E:\code
luego runFile.sh tiene el siguiente código.cd E: cd code
fuente
Finalmente una respuesta que es independiente del propio Cygwin.
Esto utiliza el hecho de que, si estoy en el directorio
C:\\Cool
y llamar al comandoC:\\Cygwin\\bin\\mintty.exe
,mintty
se abrirá automáticamente en el directorio actual, es decir,C:\\Cool
.Primero, deberá crear el archivo
C:\\Cygwin\\silent_run.vbs
con los siguientes contenidos:Luego, para instalar esta respuesta, utilizará un archivo de Registro de Windows. Para eso, simplemente coloque el contenido del siguiente archivo en un archivo llamado
C:\\Cygwin\\AddMinttyToContextMenu.reg
Ahora, corrija todas las rutas codificadas, es decir,
C:\\Cygwin
a la ubicación real donde está instalada su instalación Cygwin.Luego, simplemente abra el archivo
C:\\Cygwin\\AddMinttyToContextMenu.reg
para instalar sus nuevas entradas de registro y listo.El archivo
C:\\Cygwin\\AddMinttyToContextMenu.reg
funciona abriendo primero acmd.exe
, cambiando al directorio en el que se encuentra y luego llamandoC:\\Cygwin\\silent_run.vbs
para abrir elC:\\Cygwin\\bin\\mintty.exe
terminal con las opciones de línea de comando-w max
, es decir, para abrirlo al máximo.Se
C:\\Cygwin\\silent_run.vbs
requiere el script para abrir elC:\\Cygwin\\bin\\mintty.exe
terminal sin mantenercmd.exe
abierto el primero que abrimos.La primera entrada de
C:\\Cygwin\\AddMinttyToContextMenu.reg
no se usaC:\\Cygwin\\silent_run.vbs
porque, de forma predeterminada, lasHKEY_CLASSES_ROOT\Directory\Background\shell
claves ya están abiertas en el directorio actual, entonces, podemos llamarC:\\Cygwin\\bin\\mintty.exe
directamente para que funcione de inmediato.Referencias
fuente
Copie los comandos anteriores en un archivo de texto y guárdelo como .bat en cualquiera de "su carpeta de interés". Debería abrir cygwin en "su carpeta de interés".
fuente
basado en la respuesta @LindseyD Creé un archivo BAT simple, que abre cygwin en el directorio actual, puede ser útil (para mí lo es). Suponiendo que tiene el directorio bin de cygwin en PATH.
fuente
No sé por qué tuve que perder tanto tiempo, pero esto funciona para mí en win 10, 64 bit:
fuente
Probablemente el más simple:
1) Crear archivo foo.reg
2) Insertar contenido:
3) Ejecute foo.reg
Ahora solo haga clic derecho en cualquier carpeta, haga clic
open mintty
y generará mintty en esa carpeta.fuente
Lo mejor es hacer lo siguiente:
fuente