Come ripristinare il file .bashrc?


27

Il terminale lo mostra quando si apre:

bash: /home/atlas/.bashrc: line 73: syntax error near unexpected token `['
bash: /home/atlas/.bashrc: line 73: `if [ -x /usr/bin/dircolors ] ; then '

Ho provato a risolverlo usando:

cp /ect/skel/.bashrc ~/

E ottengo questo:

cp: cannot stat `/ect/skel/.bashrc': No such file or directory

Non sono sicuro del perché questo stia facendo questo e di come risolverlo. In precedenza ero stato nel .bashrcfile in giro e apparentemente ho fatto un casino. Tutto quello che voglio fare è ripristinare il .bashrcfile alle impostazioni predefinite.

Risposte:


49

Penso che tu abbia sbagliato strada - non lo etcè ect.

In Ubuntu, c'è una versione predefinita del .bashrcfile nella /etc/skel/directory, quindi se hai problemi con esso puoi ripristinarlo.

Per fare ciò segui i seguenti passi:

  1. Eseguire il backup del .bashrcfile corrente :

    cp ~/.bashrc ~/.bashrc.bak
  2. Copia il .bashrcfile skeleton sul tuo:

    cp /etc/skel/.bashrc ~/
  3. Successivamente, carica quello nuovo:

    source ~/.bashrc

3
questa risposta dovrebbe essere contrassegnata come corretta.
Il


0

Non devi necessariamente ricrearlo, guarda solo cosa ti dice il messaggio di errore. Sta dicendo che hai un errore di sintassi nel tuo file. Con quello che hai, direi che non è corretto nei luoghi chiave.

Invece di

if [ -x /usr/bin/dircolors ] ; then

Dovrebbe essere

if [ -x /usr/bin/dircolors ]; then

Nota la mancanza di spazio tra il ]e il ;.

Inoltre, per riferimento, ecco l'intero blocco if:

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
    alias ls='ls --color=auto'
    #alias dir='dir --color=auto'
    #alias vdir='vdir --color=auto'

    alias grep='grep --color=auto'
    alias fgrep='fgrep --color=auto'
    alias egrep='egrep --color=auto'
fi

Quello spazio non dovrebbe davvero importare. Il comando if [ -x /usr/bin/dircolors ] ; then echo yay; fiemette yayper me;) Nota lo spazio tra ]e ;.
Malte Skoruppa,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.