ฉันจะคืนค่า 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) และรีสตาร์ท bash after ( source ~/.bash_profile)
Nickolai Leschov

9

คุณเขียนทับ.bashrcในไดเรกทอรีผู้ใช้ของคุณหรือไม่? หรือทั้งระบบ.bashrcเก็บไว้ใน. /etc/skel/? You can always copy the defaultbashrc from/ etc / skel / `แบบนี้:

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

แก้ไข:ในความคิดเห็นด้านล่างรัฐโปสเตอร์ต้นฉบับ:

ฉันไม่EDITOR ส่งออกก้อง = / usr / bin / นาโน> / etc / bashrcเมื่อฉันควรที่จะเขียน>>

ตกลงนั่นอธิบายสิ่งที่ผิดพลาด แต่โดยทั่วไปแล้วใครก็ตามที่แนะนำระบบไฟล์ Linux / Unix สามารถปรับได้โดยใช้การ>>ต่อเรียงข้อมูลควรถูกทำให้อับอายต่อสาธารณะตลอดไป ปัญหาคือสิ่งที่คุณพบ ทุกสิ่งที่>>ไม่สามารถผนวกเนื้อหาที่ด้านซ้ายของไปด้านบนรายการที่ด้านขวาของ>> >>ดูเหมือนราบรื่นและรวดเร็ว แต่ในความเห็นที่ต่ำต้อยของคุณคุณจะปลอดภัยกว่าเพียงแค่เปิดไฟล์ในเครื่องมือแก้ไขและเพิ่มสิ่งที่คุณต้องเพิ่มในตอนท้ายของไฟล์ แค่ทำสิ่งนี้:

sudo nano /etc/bashrc

เพิ่มสิ่งที่คุณต้องการเพิ่มลงในไฟล์บันทึกและดำเนินการต่อ


1
Added: ผมทำเมื่อผมควรที่จะเขียนecho 'export EDITOR=/usr/bin/nano' > /etc/bashrc >>ฉันได้แทนที่ไฟล์ด้วยไฟล์จาก/etc/skel/แต่ฉันได้รับ "การเชื่อมต่อกับ 1.2.3.4 ปิด" ฉันเดาว่าไฟล์/etc/skel/นั้นเป็นเทมเพลตสำหรับ "ของจริง" .bashrcแทนที่จะเป็นอินสแตนซ์ของไฟล์กำหนดค่าที่เหมาะสมในตัวเอง บางที.bashrcมันควรจะมีการวนซ้ำไม่รู้จบหรือบางอย่าง? ฉันสามารถเข้าสู่ระบบได้ผ่านการกดปุ่มCtl+Cระหว่างการออกsshคำสั่งจากคอมพิวเตอร์ของฉันและเวลาที่ฉันเตะออก โดยวิธีการในระบบของฉันมัน/etc/bashrcไม่มีระยะเวลา
นิโคไล Leschov

อ่าาาโอเค คำแนะนำทั่วไปเล็กน้อยเกี่ยวกับ>>ฉันได้แก้ไขคำตอบของฉันแล้ว
JakeGould

1

ดูเหมือนว่า / etc / bashrc อยู่ในแพ็คเกจนี้: setup-2.8.14-20.el6_4.1.noarch.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

3 บรรทัดคำสั่งเพื่อกู้คืน bashrc! คุณให้คำตอบที่มีประโยชน์กับเราโดยเฉพาะอย่างยิ่งสำหรับผู้เริ่มต้นอย่างลินุกซ์อย่างฉันฉันใช้มันได้สำเร็จ

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.