iTerm / zsh ไม่อ่าน. bashrc หรือ. bash_profile


39

ใน~/.bash_profile ฉันมี:

if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

ใน~/.bashrcฉันมีนามแฝงบาง

เมื่อฉันโหลดหน้าต่าง iTerm ใหม่ชื่อแทนของฉันไม่ทำงาน ถ้าฉันมา~/.bashrcพวกเขาทำงาน ถ้าฉันมา~.bash_profileพวกเขาทำงาน

อย่างน้อยหนึ่งในนั้นควรจะมีแหล่งที่มาโดยอัตโนมัติ?

สิ่งที่อาจทำให้ไม่ทำงานอย่างถูกต้อง?

คำตอบ:


56

คำตอบนั้นง่ายเกือบจะเห็นได้ชัดในคำถาม นี่คือเหตุผล:

เปลือกzshไม่bashได้เป็นเปลือกที่แตกต่างกัน zshจะไม่ใช้ไฟล์เริ่มต้นที่สร้างขึ้นสำหรับbash: หรือ.bashrc ทั้งสองไฟล์แฟ้มการกำหนดค่าเริ่มต้นสำหรับ.bash_profile มีไฟล์กำหนดค่าเริ่มต้นของตนเองbashzsh

คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับพวกเขาได้ที่นี่ในzsh หน้าแนะนำ :

มีไฟล์เริ่มต้นห้าไฟล์ที่ zsh จะอ่านคำสั่งจาก:

$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout

คุณได้กล่าวถึงชื่อแทนของคุณแล้วไม่สามารถแก้ไขได้ให้ใช้ชื่อแทนของคุณที่นี่เช่น:

~/.zshrc

alias sz='source ~/.zshrc'     # Easily source your ~/.zshrc file.
alias ls='pwd; ls --color'     # Alias 'ls' to: pwd + ls + color.

ขอขอบคุณ. โปรดทราบว่าls --colorให้illegal optionทั้งในbashและzshบน OSX 10.10 แต่ไม่ใช่ใน Linux - ฉันจะดูมัน ไชโย
แบรดลีย์อุทกภัย

ฉันไม่มี Mac ที่จะทำการทดสอบ แต่ฉันคิดว่าสิ่งนี้เกี่ยวข้องกับการนำ ls ไปใช้กับ OS X ฉันไม่คิดว่ามันจะมีอาร์กิวเมนต์ -color ถ้าฉันจำได้ว่าฉันจะมองมัน
projectdp

1
"... zsh มีไฟล์กำหนดค่าเริ่มต้นของตนเอง" นี่คือสิ่งที่เขาอาจถามหาใช่มั้ย เพียงแค่พูดว่า "เพื่อนมัน ~ / .zshrc"
eyurdakul

+1 เคล็ดลับที่ยอดเยี่ยมสำหรับคำตอบสำหรับ macOS Catalina ตอนนี้ใช้ zsh อย่างเป็นทางการ ขอขอบคุณ.
therobyouknow

18

หากคุณกำลังใช้ zsh แล้วเพื่อบังคับแหล่งที่มา .bash_profile

ใน~/.zshrcเพิ่มบรรทัดด้านล่าง

source ~/.bash_profile

PS - ฉันไม่ได้ตรวจสอบว่าสิ่งนี้สามารถทำให้เกิดปัญหาใด ๆ


2
ฉันเดาคำตอบนี้จะเป็นประโยชน์หลังจากที่ปล่อย macOS 10.5 Catalina เพื่อพอร์ต bash_profile จาก bash ถึง zsh
Oleksii Kyslytsyn

รวดเร็วและมีประสิทธิภาพ!
Roberto Manfreda

0

คัดลอกบรรทัดจาก~ / .bash_profileไปที่~ / .zshrc

cat ~/.bash_profile > ~/.zshrc

และเปิดแท็บเทอร์มินัล / หน้าต่างใหม่หรือใช้ source ~/.zshrc

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.