Recuperar mi Terminal anterior después de desinstalar fish

1

Hace poco me cansé de los problemas más pequeños que la Concha de Pescado me presentó (comandos no detectables, etc.), así que decidí que quería volver a cambiar la concha a normal y desinstalar Fish.

Sin embargo, en el proceso de hacerlo, he hecho algo terriblemente mal.

Lo he establecido en la normal: /bin/bash

Sin embargo, estoy representado con una serie de indicaciones (con respecto a Vagrant) y tengo que salir con el comando CTRL + C (cancelar)

Quiero recuperar mi antiguo terminal (con mi carpeta actual antepuesta, etc.) pero no tengo idea de cómo lograr esto.

He adjuntado dos capturas de pantalla. Uno es el terminal actual (el que tiene el bash -bash-3.2$ al frente. El segundo es el terminal que quiero (el valor predeterminado con el nombre de usuario añadido) [la fuente de la imagen se encuentra en Internet, como referencia]

Este es el terminal que tengo

Esteeselterminalquequiero

He encontrado dos cosas:

  1. Se eliminó mi perfil de bash, por lo tanto, no puedo ver el nombre de mi computadora, etc. He intentado recrearlo pero:
  2. Necesito una muestra .bash_profile
  3. ... y necesito que sea persistente, de modo que cuando salga de mi terminal no disparo el VVV script (que aparentemente se dispara cuando entra por primera vez en el terminal)
pregunta lpdechow 18.08.2014 - 12:53

4 respuestas

2

Primero, rm ~/.bashrc ~/.bash_profile ~/.profile No son necesarios y no existen de forma predeterminada.

Segundo, verifica que /etc/profile esté ahí, debería estar:

# System-wide .profile for sh(1)
if [ -x /usr/libexec/path_helper ]; then
    eval '/usr/libexec/path_helper -s'
fi
if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
fi

Tercero, marque /etc/bashrc (aquí es donde se define su solicitud). Debería ser:

# System-wide .bashrc file for interactive bash(1) shells.
if [ -z "$PS1" ]; then
   return
fi
PS1='\h:\W \u\$ '
# Make bash check its window size after a process completes
shopt -s checkwinsize
# Tell the terminal about the working directory at each prompt.
if [ "$TERM_PROGRAM" == "Apple_Terminal" ] && [ -z "$INSIDE_EMACS" ]; then
    update_terminal_cwd() {
        # Identify the directory using a "file:" scheme URL,
        # including the host name to disambiguate local vs.
        # remote connections. Percent-escape spaces.
    local SEARCH=' '
    local REPLACE='%20'
    local PWD_URL="file://$HOSTNAME${PWD//$SEARCH/$REPLACE}"
    printf '\e]7;%s\a' "$PWD_URL"
    }
    PROMPT_COMMAND="update_terminal_cwd; $PROMPT_COMMAND"
fi

Finalmente, si aún no funciona, asegúrate de que tienes / bin / bash configurado como tu shell predeterminado con las opciones avanzadas en Usuario & Preferencia del sistema de grupos. Si no inicia sesión con bash, omitirá las configuraciones en /etc/

    
respondido por el sdmeyers 18.08.2014 - 19:04
3

La forma más sencilla de recuperar tu .bash_profile predeterminado es crear un nuevo usuario en tu Mac. Inicie sesión y copie los archivos deseados en la carpeta compartida / pública de ese usuario. Luego, inicie sesión como usted y cópielos en la raíz de su carpeta de perfil.

La ventaja añadida de esto es que ahora tienes un usuario virgen, prácticamente intacto, que puedes usar para solucionar problemas de tu Mac. A menos que tenga poco espacio en el disco, un nuevo perfil de usuario no es tan grande y puede ser valioso para la resolución de problemas.

    
respondido por el Steve Chambers 18.08.2014 - 18:10
1

Este es el último capítulo de la documentación de Fish Shell:

  

Si desea desinstalar fish, primero asegúrese de que fish no esté configurado como su shell. Ejecutar

chsh -s /bin/bash
     

si no está seguro.

     

A continuación, haga lo siguiente (suponiendo que se haya instalado fish en / usr / local):

sudo rm -Rf /usr/local/etc/fish /usr/local/share/fish ~/.config/fish
sudo rm /usr/local/share/man/man1/fish*.1
cd /usr/local/bin
sudo rm -f fish mimedb fish_pager fishd fish_indent
    
respondido por el LexS 18.08.2014 - 15:23
0

Aclaración: hay dos configuraciones de shell predeterminadas.

  • Uno es la configuración de Unix y se puede cambiar con chsh -s .
  • La otra es la configuración específica de Terminal.app, y se puede cambiar en las preferencias de Terminal.

Puedes configurar el comando de shell predeterminado de tu Terminal en /bin/bash -l en la aplicación Terminal.

-l le dice a Bash que lea los archivos de inicio. Incluso si no tiene ningún archivo de inicio específico para el usuario, hay archivos de inicio que abarcan todo el sistema que, entre otras cosas, configurarán el aviso al que usted conoce.

Si has configurado correctamente tu shell predeterminado de Unix, deberías poder seleccionar Default login shell en las preferencias de Terminal y esto sucederá automáticamente.

    
respondido por el interestinglythere 18.08.2014 - 21:13

Lea otras preguntas en las etiquetas