Sé que puedo configurar "Shells open with" en las preferencias de Terminal, pero tengo curiosidad por saber si hay alguna forma de configurar esto en todo el sistema (similar a actualizar / etc / passwd en algunos Unixes).
21
Use la chshutilidad de esta manera:
chsh -s bash
Apple ha cambiado chshun poco en Mac OS X en comparación con lo chshque verías en Linux, por ejemplo. Usted puede leer sobre ellos en el chsh Mac OS X Man página .
Tenga en cuenta que solo se le permitirá cambiar a un shell en la lista
/etc/shells. Esto normalmente está bien, pero significa que si desea instalar Bash 4 (desde Homebrew, MacPorts o compilando el suyo), debe agregar una línea/etc/shells. (Me encontré con esto hace unas semanas, y pensé que podría ayudar a otros a saber ...)Editar : Tim Smith señala que puede sortear la
/etc/shellslimitación si se ejecutachshcomo root a través desudo. Por ejemplosudo chsh -s /usr/local/bin/my_shell $USER, funcionará, incluso simy_shellno figura en la lista/etc/shells. Prefiero editar/etc/shells, pero al final, es un uso desudocualquier manera, ya que no puedes editar/etc/shellscomo usuario normal. Entonces quizás seis de uno, media docena del otro.fuente
/etc/shellssi no tienes que hacerlo? Por cordura, prefiero mantener los archivos del sistema iguales./etc/shellses el archivo en el sistema que define shells reconocidos. Modifico ese archivo porque quiero agregar un shell a la lista de shells reconocidos. Me parece bastante razonable.chsh: bash: non-standard shellchshsolo si está tratando de usar un shell que no figura en la lista/etc/shells./etc/shellslo que me parece extraño.Para hacer esto usando la GUI de Mac OS X:
Cabe destacar que esta ubicación es donde puede cambiar su directorio de inicio, UUID, ID de usuario, ID de grupo y nombre corto si no se siente cómodo con la Terminal. Hay una pregunta similar aquí también.
fuente
Usando las respuestas anteriores recibí un mensaje de error:
Para evitar esto:
whoamien una subshell es cambiar la shell para su usuario, no la raíz.Una cosa más si estás usando homebrew. Cuando ejecuta comandos como root (usando
sudo), zsh apunta a / bin / zsh, que viene con OSX y puede estar desactualizado. Para usar el actualizado que se instala a través de homebrew, use lo siguiente:fuente