Me encuentro abriendo una terminal y luego haciendo mucho CD en el mismo directorio cuya ruta es muy larga.
Esto significa que estoy haciendo mucho CD y estoy usando la pestaña para acelerar mucho las cosas.
Sería genial si pudiera tener algún tipo de enlace a este directorio y luego simplemente cd a eso para estar rápidamente en el directorio anidado profundo.
es posible?
git status
. También tengo algunos alias en mi.bash_profile
. No es exactamente lo que estás pidiendo, pero está relacionado.Respuestas:
Aquí está la forma de lidiar con caminos complejos con
cd
frecuencia.esto creará el enlace simbólico
Para utilizar este nuevo
Links
directorio de manera eficiente, si su intérprete de ingreso sebash
acaba de incluir este comando en el~/.profile
(que es utilizado por todas las conchas de estilo Bournebash
,ksh
,zsh
...):Esto significa que para cada uno
cd
, su shell buscará dentro de 2 directorios para encontrar un nombre de ruta local:No necesitará reiniciar su sesión para probarla, solo ejecute:
lo que significa simplemente leer mi
~/.profile
. (No tendrá que ponerlo en su~/.bashrc
puesto, ya que no es necesario repetir la misma inicialización de variables cuando no la cambie).Una vez que lo haya probado, podrá reiniciar su sesión;).
De ahora en adelante, cada vez que desee ir a
there
usted tendrá que escribir:fuente
cdora
acd $ORACLE_HOME
y tal ...)Definir un alias es una manera muy fácil de tener una abreviatura corta para un comando más largo. Una vez que tenga sus alias correctos, puede crear una sección en su archivo .bashrc (u otro archivo de inicio) para que no tenga que volver a escribir estos alias para cada nuevo shell que inicie:
en .bashrc:
etc.
Cierre la sesión y vuelva a iniciarla (o simplemente ejecute
. ~/.bashrc
) y ahora puede escribirhttpdlog
y ejecutar el CD. Ows4
y realmente realiza el comando ssh, etc.Esto elimina la necesidad de crear (una gran cantidad de) enlaces vacíos que harán que su directorio personal también parezca un desastre.
fuente
Intenta usar autojump o z .
Después de instalar cualquiera de los dos, te encuentras
cd
como siempre y aprenden los directorios más visitados y te permiten acceder a ellos solo escribiendo una parte de la ruta:Prefiero z de los dos.
fuente
Recomiendo encarecidamente fasd, que es similar a autojump y z pero mejor en mi humilde opinión. Desde el sitio web:
fuente
Alternativamente, podría crear un alias. Agregue lo siguiente a algo como .bashrc o .aliases
Luego, asegúrese de que cualquier archivo en el que esté sea
source
d. Mis alias están en .bashrc, que obtengo con esta línea en .bash_profile:source ~/.bashrc
fuente
Agregar enlaces simbólicos convenientes está bien para un directorio especial o dos, pero muy rápidamente puede ser difícil de manejar. Una solución mucho mejor es usar la variable de entorno
CDPATH
, disponible enbash
y otros shells para este propósito.CDPATH
es una lista separada por dos puntos (comoPATH
) de lugares para buscar un nombre de directorio. Puede contener nombres de ruta absolutos y relativos. Tengo el mío puesto a algo asíexport CDPATH=".:..:$HOME/work/repos:$HOME/projects:<etc>"
.Con esta configuración, puedo escribir
cd pdftools
desde cualquier lugar y me llevará a~/projects/pdftools
. (Con un enlace simbólico, tendría que escribircd ~/pdftools
si no estaba en mi directorio personal.) También puedo atajo en subdirectorios:cd pdftools/bin
.El
..
en miCDPATH
me permite escribir encd sisterdir
lugar decd ../sisterdir
, etc. Como es de esperar, cuando creo nuevos directorios en cualquier lugarCDPATH
, se encontrarán automáticamentecd
, sin necesidad de crear nuevos enlaces simbólicos o alias.Esta característica se vuelve aún mejor si usa el
bash_completion
archivo distribuido, por ejemplo, con sistemas Debian. No venía con mi caja OS X, así que busqué una copia y funciona bien. (Obtener conbrew
, o simplemente descargarlo manualmente desde aquí .) Este archivo define mejoras a la finalización de comandos, de modo que pueda escribircd pdf<TAB>
y elpdftools
directorio se encuentra y expandido desde cualquier lugar enCDPATH
.fuente
Claro: crea un enlace simbólico
fuente
Me gusta usar bashmarks para crear fácilmente "marcadores a directorios" sobre la marcha.
Vea el archivo Léame en: https://github.com/huyng/bashmarks
Nota: necesitará instalar git para seguir el proceso de instalación de tres pasos de bashmark: http://git-scm.com/download/mac
¡Buena suerte!
fuente
Alternativamente, también puede intentar instalar fish shell.
http://fishshell.com/
Esto tiene una excelente predicción para los comandos. También le permite escribir de manera inteligente sin distinción entre mayúsculas y minúsculas sin ningún problema.
La desventaja de los peces es que tiene su propio lenguaje de secuencias de comandos y no son compatibles con bash.
fuente
Todo lo que hago es escribir "cd" y luego arrastrar la carpeta del Finder al Terminal que pega en la ruta completa. Quizás no sea tan elegante, pero ¿funciona para todas las carpetas frente a algunos atajos preestablecidos?
fuente