Tengo MinGW / MSYS en Windows, y no puedo entender cómo iniciar el shell de MSYS en la carpeta en la que estoy trabajando.
Por ejemplo, en la consola de Windows estoy trabajando en una carpeta c:\temp
y si llamo a MSYS ( msys.bat
) se abre una nueva ventana de consola en una ubicación fija, que representa mi carpeta de inicio.
¿Cómo cambiar este msys.bat
archivo, para que el shell de MSYS se abra en la carpeta de trabajo actual (o se modifique después del inicio)?
%cd%
) de alguna manera, pero no estoy seguro.Respuestas:
No estoy seguro de qué versión de msysgit está utilizando, pero para mí llamar
msys.bat
no cambia el directorio actual. Si ve que se está cambiando el directorio, verifique eletc/profile
archivo en el directorio msysgit para ver loscd
comandos. Como este archivo se ejecuta cuando se inicia un shell de inicio de sesión, podría ser la causa de que siempre aterrice en su directorio de inicio.fuente
cd "$HOME"
. Si comenta que out bash comenzará en la carpeta actual, entonces es bastante fácil escribircd
para ir a la carpeta de inicio.Como otros han señalado, msys.bat emitirá un
cd "$HOME"
desdeetc/profile
. Establecer la variable de entorno HOME en.
me da un shell mingw con el directorio de trabajo correcto.fuente
Puede crear un archivo bash y pasar argumentos al msys2_shell.cmd para comenzar donde quiera que esté.
msys2_shell.cmd -where "home/name/esp"
fuente
Si desea ejecutarlo en la carpeta en la que está trabajando, y está trabajando en esa carpeta regularmente, puede agregar una línea al final de
.bash_profile
su directorio de inicio.cd /c/temp
Este comando se ejecutará cada vez que inicie sesión en el terminal. Puede elaborar y obtener un archivo si tiene varios comandos que desea ejecutar, por ejemplo
. ~/etc/start_script . ~/etc/start_script2
Esto es especialmente útil si ya tiene su .bashrc configurado o si realmente no desea utilizar una ruta HOME alternativa.
fuente
En caso de que la modificación de
etc/profile
(comentandocd "$HOME"
como en la primera respuesta) no sea deseable por alguna razón, esto podría hacer el trabajo:Este ejemplo iniciaría msys shell en el
/tmp
directorio.fuente