Estoy intentando moverme a zsh desde Bash.
Puse mi .bashrc directamente en mi .zshrc, y causó muchos errores cuando intento usar Bash nuevamente.
¿Cómo puede exportar su .bashrc a .zshrc?
Estoy intentando moverme a zsh desde Bash.
Puse mi .bashrc directamente en mi .zshrc, y causó muchos errores cuando intento usar Bash nuevamente.
¿Cómo puede exportar su .bashrc a .zshrc?
Respuestas:
Si bien la respuesta de lhunath me empujó en la dirección correcta, zsh no parece originarse .profile
automáticamente. Se puede encontrar mucha buena información sobre este tema en esta publicación de superusuario .
La adaptación que estoy usando es poner alias y funciones comunes y obtenerlos .profile
manualmente de la siguiente manera:
En ~/.bashrc
:
source ~/.profile
En ~/.zshrc
:
[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'
emulate
es un comando incorporado de zsh. Con un solo argumento, configure las opciones de zsh para emular el shell especificado tanto como sea posible.
No puede " exportar " su .bashrc
a .zshrc
. .bashrc
es un archivo que ejecuta bash
comandos. .zshrc
es un archivo que ejecuta zsh
comandos.
No se puede esperar zsh
a ser capaz de ejecutar los bash
comandos en su .bashrc
, por lo que debe convertirlo en un nuevo .zshrc
lugar de tratar de ejecutar .bashrc
desde .zshrc
o copiar el primero en el segundo.
Si desea un archivo de inicialización de shell común para todos sus shells; usar .profile
(y quitar .bashrc
y .zshrc
). Se obtiene de todos los shells POSIX. Y allí, se adhieren a shell POSIX cuenta única . Entonces ese código se ejecutará en cualquier shell POSIX. (Sin embargo, no estoy 100% seguro de que zsh
sea compatible con POSIX).
Ver: http://mywiki.wooledge.org/DotFiles .
Sin embargo, y primero leí mal esta parte de su pregunta, no debería experimentar errores bash
al ejecutar su a .bashrc
menos que ponga zsh
comandos allí. ¿Tuviste? ¿Qué errores está recibiendo? Me parece que ha agregado zsh
código a su .bashrc
y bash
(obviamente) no lo entiende.
Como acotación al margen, ojblass
intenta hacer un punto de portabilidad que solo tiene éxito en parte. zsh
es un gran caparazón (aunque yo no he tenido los honores), pero al escribir guiones; Te recomiendo que lo hagas con #!/usr/bin/env bash
. Principalmente solo por su propio (y eventualmente, las personas que comparte con ellos) en aras de la portabilidad.