ทำให้ iTerm2 เปิดตัวด้วย Zsh


92

ฉันขุดผ่านการตั้งค่าของ iTerm2 แต่ดูเหมือนจะหาวิธีเปิด Zsh แทน Bash ไม่ได้มีใครรู้วิธีที่เหมาะสมในการทำสิ่งนี้ภายใน iTerm2 หรือไม่?

ฉันถามสิ่งนี้เพราะฉันมาจาก Mac Terminal และช่วยให้คุณเลือกสิ่งที่จะรันเมื่อเริ่มต้นได้อย่างง่ายดาย แต่ดูเหมือนว่าฉันจะไม่พบสิ่งที่ตรงไปตรงมากับ iTerm2

ฉันค้นหาโดย Google แต่ด้วยเหตุผลบางประการฉันสามารถค้นหาการอ้างอิงของ oh-my-zsh เท่านั้นไม่มีอะไรเกี่ยวข้องกับ iTerm2 ที่ไม่ได้ดัดแปลง

ขอขอบคุณสำหรับความช่วยเหลือที่คุณสามารถให้ได้ขอบคุณ :)

คำตอบ:


166

เปลี่ยนเชลล์เริ่มต้นของคุณเป็น / bin / zsh โดยรันchsh -s /bin/zshคำสั่ง


33
ยอดเยี่ยม! ที่ได้ผลฉันใช้chsh -s /bin/zshสำหรับผู้ที่สงสัย
greduan

35
chsh -s `which zsh`อาจจะดีกว่าเล็กน้อย
nikola

การตั้งค่าอยู่ที่ไหน?
tusharmath

@Tushar การตั้งค่าอะไร?
Adam Batkin

ยกโทษให้ฉันสำหรับความไม่รู้ของฉัน การรันคำสั่งตามที่คุณอธิบายทำงานได้อย่างสมบูรณ์แบบ
tusharmath

63

แม้ว่าการเปลี่ยนแปลงด้วย chsh -s $(which zsh)ทำงานได้อย่างสมบูรณ์แบบสำหรับฉัน แต่ iTerm2 ของฉันจะไม่เปิดเทอร์มินัลใหม่โดยอัตโนมัติด้วย zsh

แต่ผมไปiTerm2 -> Preferences -> Profiles -> DefaultและในGeneralแท็บการตั้งค่าคำสั่งเพื่อแทน/usr/local/bin/zshLogin shell

อัปเดต:ด้วย iTerm เวอร์ชันปัจจุบัน (ณ 2.1.1) มันทำงานได้อย่างสมบูรณ์แบบสำหรับฉันโดยการเปลี่ยนเชลล์เริ่มต้น (ที่แสดงด้านบน) เท่านั้น


1
ฉันโหวตเรื่องนี้เพราะคำใบ้ใกล้เสร็จแล้ว login -fp [username]อย่างไรก็ตามคำสั่งจะต้องมี แทนที่ [ชื่อผู้ใช้] กับผู้ใช้ในพื้นที่ของคุณ มิฉะนั้น iTerm จะปิดทันทีหลังจากเริ่มต้น
Marschal

@Marschal คุณถูกต้อง ฉันทำผิดพลาดเหมือนกันและเพิ่มคะแนนให้กับคำตอบข้างต้นและ iTerm ของฉันก็เริ่มเลิกใช้ทันทีที่ฉันทำการเปลี่ยนแปลง
Hussain K

บันทึกวันนี้ ฉันบังเอิญrm -rf /usrและทุบตีก็หายไปฉันสามารถหาเปลือกเพื่อพยายามแก้ไขความเจ็บปวดได้
Samuel Elh

6

คล้ายกับคำตอบด้านบน: การแก้ไขโปรไฟล์ zsh ของฉันที่ฉันสร้างบนแท็บทั่วไปในฟิลด์ "ส่งข้อความเมื่อเริ่มต้น:" ฉันมี "clear; pwd; ls; zsh;" สิ่งนี้ทำให้ฉันมีหน้าต่างแสดงสิ่งที่ฉันต้องการเห็นและสุดท้ายเริ่ม zsh


2

สิ่งต่อไปนี้ใช้ได้ผลกับฉันด้วย:

ค่ากำหนด -> โปรไฟล์ -> แท็บทั่วไป -> คำสั่ง -> เลือก "Custom Shell" -> เขียน "zsh"

รีสตาร์ท iTerm2

ฉันยังคงให้ bash สำหรับ Terminal เป็นเชลล์เริ่มต้น

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