デフォルトのbashrcを復元するにはどうすればよいですか?


9

誤って上書きしてしまいました.bashrc。私は次のことをしました

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

Burの>代わりに誤って入力しました>>。悪い考えだったと思います。

私はまだこのトリックを使用してログインできます(Ctrl+C.bashrcが完全に実行される前にヒットします)。しかし、どうすればデフォルトに戻すことができます.bashrcか?

CentOS 6.5 x86_64を実行しています。デフォルトのbashrcファイルがディストリビューションのどこかにある場合、それを見つけることができません。

回答:


13

破損したファイルを邪魔にならない場所に移動し、破損したファイルを提供するパッケージを再インストールします。

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

ありがとう!(rm /etc/bashrc)の前に破損したファイルを削除して削除し、その後(source ~/.bash_profile)でbashを再起動してください
Nickolai Leschov

9

.bashrcユーザーディレクトリのを上書きしましたか?または、次のよう.bashrc/etc/skel/? You can always copy the default.bashrc from/ etc / skel / `に保存されているシステム全体:

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

編集:元のポスターの下のコメントで述べています:

私はエコーエクスポートEDITOR = / usr / bin / nano> / etc / bashrcを書いておくべきだったのに>>と書いたはずです。

さて、それは何が悪かったのかを説明しています。しかし、一般的に、Linux / Unixシステムファイルを>>連結を使用して調整することを提案する人は誰でも、永久に恥をかかされるべきです。問題はまさにあなたが遭遇したものです。そのすべて>>ませんがの左に追加する内容である>>の右側の項目のトップへ>>。滑らかで速いように見えますが、私の考えでは、エディターでファイルを開いて、ファイルの最後に追加する必要があるものを追加するだけではるかに安全です。これを行うだけです:

sudo nano /etc/bashrc

ファイルに追加する必要があるものをすべて追加し、保存して次に進みます。


1
追加:echo 'export EDITOR=/usr/bin/nano' > /etc/bashrc書いておくべきだったときに私はやった>>。既にファイルをのファイルで置き換えましたが、/etc/skel/「1.2.3.4への接続が閉じられました」というメッセージが表示され続けます。のファイルは、それ自体が適切な構成ファイルのインスタンスではなく/etc/skel/、「実際の」テンプレートです.bashrc。たぶん、.bashrc無限ループか何かが含まれているはずですか?私のコンピューターからコマンドをCtl+C発行してsshからそれが私を追い出す時間までの間にヒットすることによってのみログインできます。ちなみに、私のシステムで/etc/bashrcはピリオドはあり
ません

ああ、そうか。>>私の回答について少し編集しました。
JakeGould 2014

1

/ etc / bashrcがこのパッケージに含まれているようです:setup-2.8.14-20.el6_4.1.noarch.rpm

このrpmを再インストールしてみてください。(意図しない結果になる可能性があります)

または、ソースrpmをダウンロードして、ファイルを手動でコピーすることもできます。

ソースRPM:setup-2.8.14-20.el6_4.1.src.rpm

http://www.wikihow.com/Extract-RPM-Packages

http://rpm.pbone.net/index.php3/stat/4/idpl/25011386/dir/centos_6/com/setup-2.8.14-20.el6_4.1.noarch.rpm.html


0

bashrcを復元するための3つのコマンドライン!特に私のようなLinux初心者の場合、あなたは私たちに非常に役立つ答えをくれます。

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

全てに感謝


0

実行(ルートである必要はありません)

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

rpm現在のディレクトリにパッケージをダウンロードします。次に、パッケージを抽出し、それが属する場所にファイルを移動します。これにより、パッケージを再インストールする必要がなくなります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.