มีบางสิ่งที่คุณสามารถลองได้:
- ใช้
bash -vเพื่อดูว่าบรรทัดใดที่กำลังอ่านในระหว่างการเริ่มต้นเชลล์
- ใช้
bash -xเพื่อดูว่าคำสั่งใดถูกเรียกใช้ระหว่างการเริ่มต้นเชลล์
- รันด้วยไฟล์เริ่มต้นเพียงไฟล์เดียว
ทุบตี -v
-v ตัวเลือกที่จะทำให้การbashพิมพ์แต่ละบรรทัดจากแฟ้มสคริปต์ทุกอ่านเป็นมันอ่านมัน
เริ่มต้นด้วยการวิ่ง
bash -i -v >bash-i.out 2>&1
รอประมาณ 5-10 Ctrl+Cวินาทีแล้วกด
สิ่งนี้จะทำให้คุณมีไฟล์เดียวที่เรียกbash-i.outว่าเป็นเหมือนไฟล์เริ่มต้นทั้งหมดของคุณที่ผสาน (หรือตัดแบ่ง) เข้าด้วยกัน
จากนั้นใช้ในการเปิดไฟล์และค้นหานามแฝงใช้less/aliasname
ตอนนี้เปรียบเทียบว่านามแฝงปรากฏที่เกี่ยวข้องกับบรรทัดอื่น ๆ ในไฟล์ได้อย่างไร ตัวอย่างเช่นในระบบส่วนใหญ่/etc/bash.bashrcมีความคิดเห็นที่ด้านบนที่ระบุว่า/etc/bash.bashrcและ~/.bashrcมีหนึ่งด้วย
หากอยู่เหนือส่วนบนของคุณ~/.bashrcอาจเป็นไฟล์เริ่มต้น/etcที่กำหนดนามแฝงไม่เช่นนั้นจะอยู่ใน~/.bashrcไฟล์ของคุณหรือไฟล์ซึ่งรวมถึงผ่านsourceหรือ.(คำสั่ง dot)
หากไม่แสดงนามแฝงลอง
bash -l -v >bash-l.out 2>&1
ที่บอกทุบตีจะเป็นเปลือกเข้าสู่ระบบซึ่งอ่านแฟ้มเริ่มต้นบางอย่างที่แตกต่างกันเช่น/etc/profileและ~/.bash_profileแทนและ/etc/bash.bashrc~/.bashrc
ทุบตี -x
หากbash -vไม่ได้ให้คำตอบที่ชัดเจนให้ลองเรียกใช้bash -xซึ่งพิมพ์คำสั่งที่เชลล์ใช้อยู่แทนที่จะเป็นบรรทัดที่เชลล์อ่านอยู่
วิธีการคือพื้นเช่นเดียวกับข้างต้นยกเว้นการเปลี่ยนแปลงไป-v -x(คุณสามารถใช้ทั้งสองอย่างพร้อมกันหากจำเป็น)
เรียกใช้ด้วยไฟล์เริ่มต้นเพียงไฟล์เดียว
bash -i --rcfile="$HOME/.bashrc"
และดูว่าคุณมีนามแฝง
ลองเหมือนกันกับการrcfileตั้งค่า/etc/bash.bashrcหากระบบของคุณมี
จากนั้นลอง
bash -l --rcfile="$HOME/.bash_profile"
และทำเช่นเดียวกันกับทุกไฟล์ทุบตีเริ่มต้นที่มีprofileในชื่อของมันเช่นการเปลี่ยนแปลงไป$HOME/.bash_profile/etc/profile
วิธีใดที่ทำให้นามแฝงปรากฏขึ้นจะบอกไฟล์ที่คุณควรเริ่มต้นดู
set -xตามคำแนะนำที่ด้านบนของคุณและดูว่ามันแคบลงสำหรับคุณ