ฉันกำลังประสบปัญหากับ Ubuntu ชื่อแทนทุบตีเช่นllไม่ทำงานถ้าฉันเข้าสู่ระบบของฉันจาก SSH มันทำงานได้ดีหลังจากเขียนbashเป็นคำสั่งในเชลล์
มันเคยทำงาน มีปัญหาอะไร
echo $SHELL
/bin/bash
ฉันกำลังประสบปัญหากับ Ubuntu ชื่อแทนทุบตีเช่นllไม่ทำงานถ้าฉันเข้าสู่ระบบของฉันจาก SSH มันทำงานได้ดีหลังจากเขียนbashเป็นคำสั่งในเชลล์
มันเคยทำงาน มีปัญหาอะไร
echo $SHELL
/bin/bash
คำตอบ:
มีชุดไฟล์ที่แตกต่างกันซึ่งคุณสามารถตั้งชื่อแทนเหล่านั้นขึ้นอยู่กับว่า Bash เริ่มเป็นเชลล์เข้าสู่ระบบหรือไม่
หากคุณเข้าสู่เครื่องของคุณ (เช่นระบุชื่อผู้ใช้และรหัสผ่าน) Bash จะโหลด/etc/profileและโหลดครั้งแรก~/.bash_profileเสมอ~/.bash_loginและ~/.profileหากพบหนึ่งในนั้น
หากคุณเริ่มต้นเทอร์มินัลใหม่จากเครื่องของคุณคุณจะไม่เริ่มต้นเชลล์ล็อกอิน แต่เป็นเชลล์แบบโต้ตอบที่เรียกว่า โหลดนี้~/.bashrcแต่ไม่มีข้อมูลอื่น ๆ ด้านบนและนี่คือที่ที่ชื่อแทนของคุณอาจถูกจัดเก็บไว้ *
ในการโหลดเนื้อหาของ.bashrcเมื่อคุณใช้งานเชลล์ล็อกอินคุณควรเพิ่มสิ่งต่อไปนี้ใน~/.bash_profile:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
เชื่อมต่อใหม่ผ่าน SSH และนามแฝงจาก~/.bashrcจะสามารถใช้ได้
* ถ้ามันไม่ได้อยู่ในไฟล์นี้อาจมีbashrcไฟล์ทั้งระบบอื่น ๆเช่น/etc/bash.bashrcบน Ubuntu ดู: ตัวแปรสภาพแวดล้อม - เอกสารชุมชนของ Ubuntu