Ripristino del mio vecchio Terminale dopo aver disinstallato il pesce

1

Recentemente mi sono stancato dei piccoli nodi che la Fish Shell mi ha presentato (comandi sconosciuti, ecc.) quindi ho deciso che volevo riportare la shell alla normalità e disinstallare il pesce.

Tuttavia, nel farlo, ho fatto qualcosa di terribilmente sbagliato.

L'ho impostato su normale: /bin/bash

Tuttavia Im è rappresentato con una serie di prompt (riguardo a Vagrant) e deve uscire da questo con il comando CTRL + C (cancella)

Voglio riprendere il mio vecchio terminale (con la mia cartella attuale anteposta ecc.) ma non ho idea di come farlo.

Ho allegato due screenshot. Uno è il terminale corrente (quello con bash -bash-3.2$ davanti. Il secondo è il terminale che voglio (l'impostazione predefinita con il nome utente aggiunto) [la fonte dell'immagine è trovata su Internet, per riferimento]

Questo è il terminale che ho

Questoèilterminalechevoglio

Ho trovato due cose:

  1. Il mio profilo di bash è cancellato, quindi non riesco a vedere il nome del mio computer, ecc. Ho provato a ricrearlo ma:
  2. Ho bisogno di un campione .bash_profile
  3. ... e ho bisogno che sia persistente in modo tale che quando esco dal mio terminale non sparo il VVV script (che apparentemente si attiva quando entra per la prima volta nel terminale)
posta lpdechow 18.08.2014 - 12:53
fonte

4 risposte

2

Primo, rm ~/.bashrc ~/.bash_profile ~/.profile Questi non sono necessari e non esistono per impostazione predefinita.

In secondo luogo, verifica che ci sia /etc/profile , dovrebbe essere:

# 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

Terzo, controlla /etc/bashrc (qui è dove è stato definito il tuo prompt). Dovrebbe essere:

# 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

Infine, se ancora non funziona assicurati di avere / bin / bash impostato come shell predefinita usando le opzioni avanzate in User & Gruppi Preferenza di sistema. Se non accedi con bash, ignorerà le configurazioni in /etc/

    
risposta data 18.08.2014 - 19:04
fonte
3

Il modo più semplice per recuperare il tuo .bash_profile predefinito potrebbe essere quello di creare un nuovo utente sul tuo Mac. Accedi e copia i file desiderati nella cartella condivisa / pubblica dell'utente. Quindi accedi come tu e copialo nella root della cartella del tuo profilo.

Il vantaggio in più di questo è che ora hai un utente vergine, praticamente intatto, che puoi utilizzare durante la risoluzione dei problemi del tuo Mac. A meno che tu non sia a corto di spazio su disco, un nuovo profilo utente non è così grande e può essere utile per la risoluzione dei problemi.

    
risposta data 18.08.2014 - 18:10
fonte
1

Questo è l'ultimo capitolo della documentazione di Fish Shell:

Should you wish to uninstall fish, first ensure fish is not set as your shell. Run

chsh -s /bin/bash

if you are not sure.

Next, do the following (assuming fish was installed to /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
    
risposta data 18.08.2014 - 15:23
fonte
0

Chiarificazione: ci sono due impostazioni di shell predefinite.

  • Uno è l'impostazione Unix e può essere modificato con chsh -s .
  • L'altra è l'impostazione specifica di Terminal.app e può essere modificata nelle preferenze di Terminal.

Puoi impostare il comando della shell di default di Terminal su /bin/bash -l nell'app Terminal.

-l indica a Bash di leggere i file di avvio. Anche se non disponi di file di avvio specifici per l'utente, esistono file di avvio a livello di sistema che, tra le altre cose, imposteranno il prompt a quello che ti è familiare.

Se hai impostato correttamente la shell predefinita di Unix, dovresti essere in grado di selezionare Default login shell nelle preferenze di Terminal e ciò avverrà automaticamente.

    
risposta data 18.08.2014 - 21:13
fonte

Leggi altre domande sui tag