2011-04-17 10 views

Respuesta

56

A partir de Mac OS X Lion 10.7, terminal soporta Reanudar y por defecto restaurará automáticamente terminales que tenías abiertas al salir, la restauración de sus directorios de trabajo. Entonces, puede simplemente abrir una nueva terminal y un CD en su directorio de git, luego dejar la ventana abierta cuando abandone. Cada vez que vuelva a abrir la Terminal, la terminal estará allí, en el mismo directorio. (Esto funciona para bash de forma predeterminada. Si está utilizando otro shell, deberá adaptar el código en/etc/bashrc a su shell. He publicado el código de zsh en mi respuesta al Resume Zsh-Terminal (OS X Lion) en SuperUser).

También puede hacer arreglos para que Terminal inicie un shell en un directorio particular. Puede personalizar o crear un "Configuración del perfil" para emitir un comando "cd" cuando se inicia:

Terminal> Preferencias> Configuración> [perfil]> Shell> Inicio> Ejecutar comando

Habilite "Ejecutar comando" y "Ejecutar dentro de shell", luego configure el comando en cd your_git_directory. Cuando abres una nueva terminal con ese perfil, irá a tu directorio de git.

Te recomiendo Duplique el perfil predeterminado actual (si nunca lo has cambiado, el predeterminado es "Básico") usando el menú Acción ("engranaje") en la parte inferior de la lista de perfiles, luego personaliza ese perfil.

Por último, para que se abra automáticamente un terminal con este perfil cuando se abre la Terminal, establezca

Terminal> Preferencias> inicio> en el arranque, abierta

a su perfil personalizado . (En Lion, Resume restaurará las ventanas que estaban abiertas al salir, en lugar de realizar la acción de inicio. Como mencioné, puede dejar este terminal abierto cuando sale y se restaurará cuando abra Terminal nuevamente. puede presionar la tecla modificadora Opción al salir; el elemento del menú Salir cambiará a "Salir y descartar Windows" y la próxima vez que abra Terminal realizará la acción de inicio).

+0

Super útil gracias! Configuré Terminal con pestañas de inicio en cada uno de mis proyectos de Xcode y en los directorios, títulos y colores de los submódulos de git. Cada uno dispara con un fetiche de git y un estado de git. ¡Dulce! –

+0

El comando "Ejecutar comando" no parece funcionar si utiliza algo además de "Conchas abiertas con" "shell de inicio de sesión predeterminado" (necesario para un inicio más rápido, por ejemplo http://apple.stackexchange.com/questions/41743/how -do-i-speed-up-new-terminal-tab-loading-time) ... [?] De todos modos, iterm2 parece permitir el comportamiento deseado, de regreso a él rogerdpack

+0

@rogerdpack Si configura cualquiera ** Conchas abiertas con : ** o ** Ejecutar comando: ** a un comando que Terminal no puede encontrar en '/ etc/shells', asume que no es un shell e inhabilita comportamientos como el" último inicio de sesión "y ** Run inside cáscara**. Esa es la única razón por la que la solución funciona. Probablemente sea mejor que evite esa solución alternativa y purgue periódicamente el registro del sistema, especialmente si primero verifica el tamaño del registro; si no es demasiado grande, no hay problema con la solución. (Y considere la posibilidad de presentar un informe de error con Apple sobre el rendimiento de inicio de sesión). –

31

Trate echo "cd $directory" >> ~/.bash_profile

+2

Gracias, abrí. ~/.bash_profile y lo edité! –

+9

Tuve que usar: 'echo" cd "\' pwd \ '>> ~ /.bash_profile' – meetar

16

Me gusta tener 'Nuevas ventanas abiertas con : El mismo directorio de trabajo '. Todas las respuestas que he encontrado para esta pregunta (muchas SO) romperán esa configuración yendo siempre al nuevo directorio de inicio. A continuación se muestra lo que uso en la parte superior de mi .profile (o .bashrc, etc.).

export START="/Users/michael/my/starting/directory" 
if [[ $PWD == $HOME ]]; then 
    cd $START 
fi 

Esto verá si se encuentra en su directorio HOME sólo en el lanzamiento, y si es así cambiar a su nuevo directorio START. De esta forma, las ventanas nuevas no ejecutarán automáticamente este comando.

La única advertencia es que si está en su directorio actual HOME y abre una nueva ventana, lo llevará al START. Que se espera

+4

La mejor solución que he encontrado después de una larga búsqueda. – hbmuller

Cuestiones relacionadas