No me gusta escribir de peces cada vez que comienzo a la terminal. Quiero fish por defecto. ¿Cómo puedo configurar los peces shell como mi intérprete de comandos por defecto en Mac?

15 Comentarios

  1. 26

    Estos son aplicables a MacOS Sierra 10.12.5 (16F73) y probablemente algunos otros recientes y próximas versiones de MacOS.

    1. chsh no es suficiente para cambiar el shell por defecto. Asegúrese de que usted presione Comando+,, mientras que el terminal es abrir y cambiar el ‘Conchas se abran con la «opción» por Defecto shell de inicio de sesión.’

    2. En el caso de bash, asegúrese de que ejecutar echo $BASH_VERSION para confirmar que usted está ejecutando la intención de la versión de bash. bash --version no te da la información correcta.

    • Como esta respuesta es la aceptación de uno, tal vez en lugar de ser un apéndice presumiblemente a otra respuesta, usted podría hacer una respuesta completa a incluir en el apéndice.
    • Esta pregunta se responde en el docs ahora.
    • Hecho.
  2. 223

    1. sudo nano /etc/shells
    Cómo configurar mi shell por defecto en Mac?

    2. agregar /usr/local/bin/pescado a la lista de conchas
    Cómo configurar mi shell por defecto en Mac?

    3. chsh -s /usr/local/bin/pescado

    • que no funcionará si usted no tiene raíz
    • Upvoted a pesar de nano 😉
    • Y usted debe cambiar Shell open with: Default login shell en la configuración de la Terminal.aplicación
    • Upvoted porque de nano 😉
  3. 71

    Puede utilizar chsh a cambio de un shell del usuario.

    Ejecute el siguiente código, por ejemplo, para cambiar su shell para Zsh

    chsh -s /bin/zsh
    

    Como se describe en la página del manual, y por Lorin, si la cáscara no es conocido por el sistema operativo, usted tiene que añadirlo a su lista conocida: /etc/shells.

    • Intentó y consiguió chsh: /usr/local/bin/fish: non-standard shell Solución fue añadir a /etc/shells, como se describe por @lorin-hochstein respuesta a continuación
    • de que puedo trabajar si usted no tiene raíz
    • [email protected]:~$ chsh -s /Usuarios/dbright/sys/bin/bash Cambio de shell para dbright. Contraseña para dbright: chsh: /Users/dbright/sys/bin/bash: no-estándar de la shell [email protected]:~$ ls -l /etc/shells -rw-r–r– 1 root rueda 179 23 Sep 2007 /etc/shells
    • Hum, recientemente he intentado chsh que trabajó como un simple usuario (sin el -s aunque). Voy a tratar de nuevo pronto.
  4. 66

    Desde La Terminal:

    1. Añadir el Pescado a /etc/shells, lo que requerirá una contraseña administrativa:

      sudo echo /usr/local/bin/fish >> /etc/shells
      
    2. Hacer Pescado a su shell por defecto con chsh:

      chsh -s /usr/local/bin/fish
      

    Desde Preferencias Del Sistema:

    1. De usuario y Grupos → ctrl-clic sobre el Usuario Actual → Opciones Avanzadas…

    2. Cambiar el shell de inicio de Sesión para /usr/local/bin/fish

      Cómo configurar mi shell por defecto en Mac?

    3. Pulse ACEPTAR, cerrar la sesión y volver a

    • Tenía que hacer una pequeña modificación en el paso 1. – sudo sh -c 'echo /usr/local/bin/fish >> /etc/shells'
    • Sólo otra manera de hacer lo mismo @purpletonic mencionado echo /usr/local/bin/fish | sudo tee -a /etc/shells
  5. 20

    He aquí otra manera de hacerlo:

    Suponiendo que instalado con MacPorts, que se puede hacer por hacer:

    sudo port install fish
    

    Su concha se encuentra en /opt/local/bin/fish.

    Necesita decirle a OSX que es un válido shell. Para ello, añade este camino hasta el final de la /etc/shells archivo.

    Una vez que hayas hecho esto, usted puede cambiar la carcasa por ir a Preferencias del Sistema -> Cuentas. Haga clic en el Bloqueo para permitir los cambios. Haga clic en la cuenta y seleccione «Opciones Avanzadas…». En la «shell» de campo, agregar la ruta de acceso para los peces.

    • gracias! esto funcionó muy bien y de pescado y mi terminal por defecto en todas partes. sólo está cambiando en la terminal como una de las otras respuestas hicieron indicador de la terminal de mí cada vez que he cerrado la ventana y chsh simplemente no funcionó para mí.
  6. 11

    Lo único que trabajó para mí fue una combinación de todos estos métodos.

    1. Primero tenía que añadir el pescado a la /etc/shells archivo

    2. Entonces corrí chsh -s /usr/local/bin/fish

    3. Finalmente, escribí Comando+, y añadió /usr/local/bin/fish a la ruta de acceso predeterminada no

    Sólo después de que yo había hecho todo tres cosas que hicieron los peces empiezan a aparecer como el valor predeterminado para la nueva terminal de windows.

  7. 9

    Mac OS X: Cómo cambiar el Terminal de shell

    • Recomiendo a los que prefieren este enfoque y no cambiar la opción predeterminada de OSX shell. He tenido «infinito instala» en iWorks – por ejemplo – porque de secuencias de comandos de instalación que se supone que tiene un SH-compatible shell (no es el caso para ZSH en mi caso).
  8. 8

    En macOS Mojave tuve que hacer lo siguiente (utilizando zsh como ejemplo):

    brew install zsh
    sudo sh -c "echo $(which zsh) >> /etc/shells"
    chsh -s $(which zsh)
    
    • Nota: puede utilizar este método exacto para obtener la última versión de bash también. stackoverflow.com/a/55011144/117471 se me ocurrió casi exactamente el mismo código en el mío propio.
  9. 5
    1. Abrir el terminal y pulse comando+, (coma). Esto abrirá una ventana de preferencias.
    2. La primera pestaña ‘General’.
    3. Encontrar «Conchas abrir con’ configuración y elija la opción 2 que las necesidades de ruta de acceso completa de la shell.
    4. Pegar el enlace a tus peces de comando, que generalmente es /usr/local/bin/fish.

    Estoy usando macOS Sierra.

    • En la última! Una solución que funciona para un no-usuario sudo!
  10. 4

    la chsh programa le permitirá cambiar su shell por defecto. Se desea que la ruta de acceso completa al archivo ejecutable, por lo que si su cáscara es fish, a continuación, se le pedirá que proporcione la salida obtenida al tipo de which fish.

    Verás una línea que comienza con «Shell:«. Si nunca has editado, lo más probable es que dice «Shell: /bin/bash«. Reemplazar /bin/bash ruta con la ruta de acceso a su concha.

  11. 4

    Cuando en la terminal, abrimos la terminal preferencias mediante Comando+,.

    En la Ficha Configuración, seleccione uno de los temas, y elija la concha ficha de la derecha.

    Puede configurar el inicio automático de comandos fish.

  12. 3

    Cómo obtener la última versión de bash moderno macOS (prueba en Mojave).

    brew install bash
    which bash | sudo tee -a /etc/shells
    chsh -s $(which bash)
    

    Entonces usted está listo para obtener vim estilo de tab que sólo está disponible en bash>=4 (versión actual en brew es 5.0.2

    # If there are multiple matches for completion, Tab should cycle through them
    bind 'TAB':menu-complete
    
    # Display a list of the matching files
    bind "set show-all-if-ambiguous on"
    
    # Perform partial completion on the first Tab press,
    # only start cycling full results on the second Tab press
    bind "set menu-complete-display-prefix on"
    
  13. 2
    heimdall:~ leeg$ dscl
    Entering interactive mode... (type "help" for commands)
     > cd /Local/Default/Users/
    /Local/Default/Users > read <<YOUR_USER>>
    [...]
    UserShell: /bin/bash
    /Local/Default/Users >
    

    acaba de cambiar ese valor (con el comando de escritura en dscl).

    • Me sale este error cuando ejecuto leer leeg: <dscl_cmd> DS Error: -14136 (eDSRecordNotFound)
    • Sí. Eso es porque leeg es mi nombre de usuario, no el tuyo 😛
  14. 1

    Este trabajo para mí en la nueva instalación de mac osx (sierra):

    1. Definir usuario actual como propietario de conchas
    sudo chown $(whoami) /etc/shells
    1. Añadir el Pescado a /etc/shells
    sudo echo /usr/local/bin/fish >> /etc/shells
    1. Hacer Pescado a su shell por defecto con chsh
    chsh -s /usr/local/bin/fish
    1. Redefinir root como propietario de conchas
    sudo chown root /etc/shells
  15. 0

    En caso de que usted está teniendo problemas con las otras formas, trabajó en mac de Mojave, pero en general debe trabajar.

    which fish
    

    agregar la ruta de acceso de salida a «Preferencias del Sistema > Usuarios & Grupos > click derecho del usuario, Opciones Avanzadas» Pegar el resultado de que en «shell de inicio de Sesión:»

Dejar respuesta

Please enter your comment!
Please enter your name here