Comment restaurer le bashrc par défaut?


9

J'ai accidentellement écrasé .bashrc. J'ai fait ce qui suit

echo 'export EDITOR=/usr/bin/nano' >> /etc/bashrc

Bur j'ai accidentellement tapé >au lieu de >>. Je suppose que c'était une mauvaise idée.

Je peux toujours me connecter en utilisant cette astuce (appuyez Ctrl+Cavant que le .bashrc ne soit complètement exécuté). Mais comment puis-je le restaurer à sa valeur par défaut .bashrc?

J'utilise CentOS 6.5 x86_64. Si le fichier bashrc par défaut se trouve quelque part dans la distribution , je ne le trouve pas.

Réponses:


13

Déplacez le fichier endommagé à l'écart, puis réinstallez le package qui fournit le fichier endommagé.

mv /etc/bashrc /etc/bashrc.damaged
yum reinstall $(rpm -qf /etc/bashrc)

Merci! Veuillez ajouter pour supprimer le fichier endommagé avant ( rm /etc/bashrc) et redémarrer bash après ( source ~/.bash_profile)
Nickolai Leschov

9

Avez-vous remplacé le .bashrcdans votre répertoire utilisateur? Ou l'ensemble du système .bashrcstocké dans /etc/skel/? You can always copy the default.bashrc from/ etc / skel / `comme ceci:

cp /etc/skel/.bashrc ~/.bashrc

EDIT: Dans les commentaires ci-dessous, l'affiche originale indique:

J'ai fait écho export EDITOR = / usr / bin / nano> / etc / bashrc quand j'aurais dû écrire >> .

D'accord, cela explique ce qui a mal tourné. Mais en général, toute personne qui suggère d'ajuster les fichiers système Linux / Unix à l'aide de la >>concaténation doit être publiquement honteuse pour toujours. Le problème est exactement ce que vous avez rencontré. Il >>suffit d’ajouter le contenu à gauche de >>l’élément en haut à droite de >>. Cela semble simple et rapide, mais à mon humble avis, vous êtes beaucoup plus sûr d'ouvrir le fichier dans un éditeur et d'ajouter tout ce que vous devez ajouter à la fin du fichier. Faites ceci:

sudo nano /etc/bashrc

Ajoutez tout ce dont vous avez besoin pour ajouter à ce fichier, enregistrez-le et continuez.


1
Ajouté: je l'ai fait echo 'export EDITOR=/usr/bin/nano' > /etc/bashrcquand j'aurais dû écrire >>. J'ai déjà remplacé le fichier par celui de /etc/skel/, mais j'obtiens toujours "Connexion à 1.2.3.4 fermée". Je suppose que le fichier /etc/skel/est un modèle pour un "vrai" .bashrc, plutôt qu'une instance d'un fichier de configuration approprié en soi. Peut-être que le .bashrcest censé contenir une boucle sans fin ou quelque chose? Je ne peux me connecter qu'en appuyant sur Ctl+Centre l'émission d'une sshcommande à partir de mon ordinateur et le moment où elle me met à la porte. Soit dit en passant, sur mon système, il /etc/bashrcn'y a pas de règles
Nickolai Leschov

Ahhh, d'accord. Un peu de conseils généraux sur >>j'ai édité dans ma réponse.
JakeGould


0

3 lignes de commandes pour restaurer bashrc! vous nous donnez une réponse très utile, surtout pour un débutant linux comme moi, je l'applique avec succès,

mv /etc/bashrc /etc/bashrc.damaged
yum reinstall $(rpm -qf /etc/bashrc)
source ~/.bash_profile

Merci pour tout


0

Exécutez (vous n'avez pas besoin d'être root)

dnf download $(rpm -qf /etc/bashrc)

pour télécharger le rpmpackage dans le répertoire courant. Ensuite, extrayez le package et déplacez le fichier à sa place. De cette façon, vous n'avez pas besoin de réinstaller de package.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.