ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)
สำรวจจุดประสงค์และลำดับการทำงานของไฟล์เริ่มต้นเชลล์ทั่วไปเพื่อการกำหนดค่าที่คงอยู่ถาวร
ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile) เป็นบทเรียน DevOps Bootcamp ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน DevOps Bootcamp และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน
บทนำเกี่ยวกับไฟล์เริ่มต้นของเชลล์
เมื่อคุณเปิดเทอร์มินัล เชลล์ของคุณไม่ได้ปรากฏขึ้นมาแบบว่างเปล่า เชลล์จะโหลดการตั้งค่า กำหนดทางลัด และเตรียมสภาพแวดล้อมของคุณ การทำงานเหล่านี้ควบคุมด้วย "ไฟล์เริ่มต้น" พิเศษ
ไฟล์เหล่านี้เปรียบเสมือนสคริปต์กำหนดค่าที่ทำงานโดยอัตโนมัติเมื่อเริ่มเซสชันเชลล์ใหม่ เพื่อปรับสภาพแวดล้อมบรรทัดคำสั่งให้เหมาะกับคุณ
แบบโต้ตอบเทียบกับแบบไม่โต้ตอบ
เชลล์อาจเป็นแบบโต้ตอบหรือไม่โต้ตอบก็ได้
- แบบโต้ตอบ: คุณพิมพ์คำสั่งและได้รับผลตอบกลับทันที เช่น เทอร์มินัลของคุณ
- แบบไม่โต้ตอบ: สคริปต์ทำงานอยู่เบื้องหลังโดยไม่รับข้อมูลจากผู้ใช้
ไฟล์เริ่มต้นที่อ่านจะต่างกันไปตามว่าเชลล์เป็นแบบโต้ตอบหรือไม่
เชลล์สำหรับเข้าสู่ระบบเทียบกับเชลล์ที่ไม่ใช่สำหรับเข้าสู่ระบบ
เชลล์แบบโต้ตอบยังแบ่งได้เป็นสำหรับเข้าสู่ระบบและไม่ใช่สำหรับเข้าสู่ระบบ
- เชลล์สำหรับเข้าสู่ระบบ: คุณเข้าสู่ระบบของคุณ เช่น เทอร์มินัลเริ่มต้นหลังเปิดเครื่อง หรือเซสชัน SSH
- เชลล์ที่ไม่ใช่สำหรับเข้าสู่ระบบ: คุณเปิดหน้าต่างเทอร์มินัลใหม่หลังจากเข้าสู่ระบบแล้ว หรือเรียกใช้สคริปต์ เช่น
bash -c "echo Hello"
ความแตกต่างนี้เป็นกุญแจสำคัญในการทำความเข้าใจว่าไฟล์เริ่มต้นใดจะถูกเรียกใช้
โปรไฟล์เข้าสู่ระบบส่วนตัวของคุณ: .profile
ไฟล์ ~/.profile จะถูกเรียกใช้เมื่อคุณเริ่มเชลล์สำหรับเข้าสู่ระบบ ไฟล์นี้ออกแบบมาสำหรับการตั้งค่าที่ควรมีผลกับสภาพแวดล้อมผู้ใช้ทั้งหมดของคุณ โดยไม่ขึ้นกับเชลล์ที่คุณใช้งาน เช่น Bash หรือ Zsh
การใช้งานทั่วไป ได้แก่ การกำหนดตัวแปรสภาพแวดล้อมอย่าง PATH ซึ่งบอกเชลล์ว่าจะค้นหาโปรแกรมที่เรียกใช้งานได้จากที่ใด
การกำหนดค่าแบบโต้ตอบของ Bash: .bashrc
ไฟล์ ~/.bashrc จะทำงานสำหรับเชลล์แบบโต้ตอบที่ไม่ใช่สำหรับเข้าสู่ระบบ ซึ่งเป็นกรณีที่พบได้บ่อยที่สุดเมื่อคุณเปิดหน้าต่างเทอร์มินัลใหม่
โดยทั่วไปคุณจะใส่การปรับแต่งเฉพาะของ Bash ไว้ที่นี่ เช่น นามแฝง (ทางลัดคำสั่ง) ฟังก์ชันเชลล์ และการปรับแต่งข้อความพร้อมรับคำสั่ง (ตัวแปร PS1)
สาธิต: ใน .bashrc ของคุณมีอะไรบ้าง
มาดูกันว่าคุณมีไฟล์ ~/.bashrc หรือไม่ และตรวจสอบเนื้อหาทั่วไปบางส่วน สคริปต์นี้จะพยายามแสดงเนื้อหาของไฟล์
#!/bin/bash
if [ -f ~/.bashrc ]; then
echo "--- Contents of ~/.bashrc ---"
head -n 10 ~/.bashrc # Show first 10 lines
echo "---------------------------"
else
echo "No ~/.bashrc file found."
fiลำดับการทำงานโดยทั่วไป
สำหรับเชลล์สำหรับเข้าสู่ระบบ เช่น หลังเข้าสู่ระบบผ่าน SSH
/etc/profile(ใช้ทั่วทั้งระบบ)~/.profile(เฉพาะผู้ใช้)- โดยทั่วไป
~/.profileจะโหลด~/.bashrcต่อเพื่อใช้งานแบบโต้ตอบ
สำหรับเชลล์แบบโต้ตอบที่ไม่ใช่สำหรับเข้าสู่ระบบ เช่น การเปิดเทอร์มินัลใหม่
- โดยปกติจะอ่าน
~/.bashrcโดยตรง
ไฟล์เริ่มต้นที่ใช้ทั่วทั้งระบบ
นอกจากไฟล์ส่วนตัวของคุณแล้ว ยังมีไฟล์เริ่มต้นที่ใช้ทั่วทั้งระบบ ซึ่งมีผลกับผู้ใช้ทุกคนในระบบ
/etc/profile: คล้ายกับ~/.profileแต่ใช้กับเชลล์สำหรับเข้าสู่ระบบทั้งหมด/etc/bash.bashrc(หรือไฟล์ที่มีลักษณะคล้ายกัน): ใช้กับเชลล์ Bash แบบโต้ตอบที่ไม่ใช่สำหรับเข้าสู่ระบบทั้งหมด
ไฟล์เหล่านี้กำหนดค่าโดยผู้ดูแลระบบ
การใช้การเปลี่ยนแปลง: คำสั่ง `source`
หลังจากแก้ไข ~/.bashrc หรือ ~/.profile การเปลี่ยนแปลงจะยังไม่มีผลกับเชลล์ปัจจุบันจนกว่าคุณจะเริ่มเชลล์ใหม่หรือ "source" ไฟล์นั้น
คำสั่ง source (หรือชื่อแทนคือ .) จะอ่านไฟล์อีกครั้งและนำการตั้งค่าไปใช้กับสภาพแวดล้อมของเชลล์ปัจจุบัน
#!/bin/bash
# Example: Add an alias to .bashrc
echo "alias ll='ls -alF'" >> ~/.bashrc
# Source the file to apply changes
source ~/.bashrc
# Now 'll' should work!
# (Note: This might not show output directly in this environment,
# but demonstrates the command's purpose.)
echo "Try typing 'll' in a new terminal after this!"ตรวจสอบการเริ่มต้นของเชลล์
ข้อความใดต่อไปนี้เกี่ยวกับไฟล์เริ่มต้นของเชลล์เป็น TRUE
ทบทวน: การกำหนดค่าแบบคงอยู่
คุณได้เรียนรู้ว่าไฟล์เริ่มต้นของเชลล์อย่าง ~/.profile และ ~/.bashrc มีความสำคัญต่อการปรับแต่งสภาพแวดล้อม Linux ของคุณ
~/.profile: ใช้กับเชลล์สำหรับเข้าสู่ระบบและการตั้งค่าสภาพแวดล้อมทั่วไป~/.bashrc: ใช้กับเชลล์ Bash แบบโต้ตอบที่ไม่ใช่สำหรับเข้าสู่ระบบและการปรับแต่งเฉพาะของ Bash- คำสั่ง
sourceใช้การเปลี่ยนแปลงโดยไม่ต้องเริ่มเชลล์ใหม่
ไฟล์เหล่านี้ช่วยให้เทอร์มินัลทำงานตามที่คุณต้องการได้ทุกครั้ง
คำถามที่พบบ่อย
บทเรียน “ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส DevOps Bootcamp ให้อัปเกรดเป็น CoddyKit PRO คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)”
สำรวจจุดประสงค์และลำดับการทำงานของไฟล์เริ่มต้นเชลล์ทั่วไปเพื่อการกำหนดค่าที่คงอยู่ถาวร คุณปฏิบัติ DevOps Bootcamp ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน DevOps Bootcamp หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน DevOps Bootcamp บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน
บทเรียน “ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน DevOps Bootcamp นี้ได้ไหม
ได้ บทเรียน DevOps Bootcamp ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การจัดการตัวแปรสภาพแวดล้อม (export, unset)
- ไฟล์เริ่มต้นของเชลล์ (.bashrc, .profile)
- การจัดการแพ็กเกจ (apt, yum, pacman)
- ทำความเข้าใจและปรับแต่งตัวแปร PATH