Làm cách nào để khôi phục bashrc mặc định?


9

Tôi đã vô tình ghi đè .bashrc. Tôi đã làm như sau

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

Bur tôi vô tình gõ >thay vì >>. Tôi đoán, đó là một ý tưởng tồi.

Tôi vẫn có thể đăng nhập bằng thủ thuật này (nhấn Ctrl+Ctrước khi .bashrc sẽ được thực thi đầy đủ). Nhưng làm thế nào để tôi khôi phục nó về mặc định .bashrc?

Tôi đang chạy CentOS 6.5 x86_64. Nếu tệp bashrc mặc định có trong bản phân phối ở đâu đó, tôi không thể tìm thấy nó.

Câu trả lời:


13

Di chuyển tệp bị hỏng ra khỏi đường đi, sau đó cài đặt lại gói cung cấp tệp bị hỏng.

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

Cảm ơn! Vui lòng thêm để xóa tệp bị hỏng trước ( rm /etc/bashrc) và khởi động lại bash sau ( source ~/.bash_profile)
Nickolai Leschov

9

Bạn đã ghi đè lên .bashrctrong thư mục người dùng của bạn? Hoặc toàn hệ thống .bashrcđược lưu trữ trong /etc/skel/? You can always copy the default.bashrc from/ etc / skel / `như thế này:

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

EDIT: Trong các bình luận bên dưới poster gốc nêu rõ:

Tôi đã xuất echo EDITOR = / usr / bin / nano> / etc / bashrc khi tôi nên viết >> .

Được rồi, điều đó giải thích những gì đã sai. Nhưng nói chung, bất cứ ai đề xuất các tệp hệ thống Linux / Unix đều được điều chỉnh bằng cách sử dụng >>phép nối sẽ bị xấu hổ công khai mãi mãi. Vấn đề là chính xác những gì bạn chạy vào. Tất cả những gì >>làm là nối các nội dung ở bên trái của >>mục trên cùng bên phải của >>. Nó có vẻ lắt léo và nhanh chóng, nhưng theo ý kiến ​​khiêm tốn của tôi, bạn sẽ an toàn hơn nhiều khi chỉ cần mở tệp trong trình chỉnh sửa và thêm bất cứ thứ gì bạn cần để thêm vào cuối tệp. Chỉ cần làm điều này:

sudo nano /etc/bashrc

Thêm bất cứ điều gì bạn cần để thêm vào tập tin đó, lưu nó và di chuyển trên.


1
Đã thêm: Tôi đã làm echo 'export EDITOR=/usr/bin/nano' > /etc/bashrckhi tôi nên viết >>. Tôi đã thay thế tệp bằng tệp từ /etc/skel/, nhưng tôi vẫn tiếp tục "Kết nối với 1.2.3.4.". Tôi đoán tệp trong /etc/skel/là một mẫu cho "thực" .bashrc, chứ không phải là một phiên bản của tệp cấu hình phù hợp. Có lẽ .bashrcđược cho là chứa một vòng lặp vô tận hoặc một cái gì đó? Tôi chỉ có thể đăng nhập bằng cách nhấn Ctl+Cgiữa việc phát sshlệnh từ máy tính của mình và thời gian nó đuổi tôi ra. Nhân tiện, trên hệ thống của tôi, nó /etc/bashrckhông có thời gian
Nickolai Leschov

À, được rồi. Một chút lời khuyên chung về >>tôi đã chỉnh sửa thành câu trả lời của tôi.
JakeGould

1

Có vẻ như / etc / bashrc nằm trong gói này: setup-2.8.14-20.el6_4.1.noarch.rpm

Bạn có thể thử cài đặt lại vòng / phút này. (có thể có hậu quả không lường trước được)

Hoặc bạn có thể tải xuống vòng / phút nguồn và sao chép tệp theo cách thủ công:

RPM nguồn: 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

3 dòng lệnh để khôi phục bashrc! bạn cung cấp cho chúng tôi một câu trả lời rất hữu ích, đặc biệt đối với một người mới bắt đầu sử dụng linux như tôi, tôi đã áp dụng thành công nó,

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

cảm ơn vì tất cả


0

Chạy (bạn không cần phải root)

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

để tải rpmgói trong thư mục hiện tại. Sau đó giải nén gói và di chuyển tệp nơi nó thuộc về. Bằng cách này, bạn không cần phải cài đặt lại bất kỳ gói nào.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.