iTerm / Terminal OS X ช้าในการเปิดเปลือก


14

ฉันใช้ OS X 10.8 และเมื่อเร็ว ๆ นี้ฉันสังเกตเห็นว่า iTerm2 บางครั้งอาจช้ามากเมื่อเปิดเชลล์ใหม่ ใช้เวลาประมาณ 5 วินาทีก่อนที่ฉันจะทำอะไรได้บ้าง อาจดูเหมือนจะไม่มาก แต่ฉันทำงานมากในเปลือกเพื่อที่จะได้น่ารำคาญสวย

ฉันใช้ ZSH กับ oh-my-zsh

ฉันได้ลองใช้ Terminal ถอนการติดตั้ง oh-my-zsh ล้างทุกอย่างที่ไม่จำเป็นจากไฟล์เริ่มต้น (.zshenv, .zlogin, .zprofile, .zshrc, .zlogout) และล้างไฟล์ ASL ใน / var / log / asl และ แม้ว่ามันจะลดลงเล็กน้อย (เช่น 0.20 วินาที) แต่ก็ไม่มีอะไรที่จะทำให้มันเป็นไปได้ในทันทีหรือต่ำกว่า 3.0s

ไม่มีใครมีความคิดอื่นอีกไหม?


คำถามที่เกี่ยวข้อง: 31403 , 41743 , 236953 , 444614
Lri

คุณลองเปลี่ยนคำสั่งสำหรับเชลล์ใหม่ไปเป็นอย่างนั้นlogin -pfq username /usr/local/bin/zshหรือไม่?
Lri

@ lauri-ranta: พยายามทุกอย่างในหัวข้ออื่น ๆ เหล่านั้น แต่ไม่มีประโยชน์ ลองใช้ "login -pfq ชื่อผู้ใช้ / usr / local / bin / zsh" ก็ไม่ได้ทำอะไรเช่นกัน
Dimitri

เพื่อดูว่ามันเกี่ยวข้องกับเชลล์หรือ iTerm2: ใช้เวลานานเท่าใดในการเริ่มเชลล์ใหม่? (โดยป้อนzshในหน้าต่างเทอร์มินัลที่เปิดอยู่แล้ว)?
Matteo

เพิ่มลงใน.zshrc:[ $((RANDOM & 1)) -eq 0 ] && do not sleep 5
theoden8

คำตอบ:


18

ล้างข้อมูลเข้าสู่ระบบ /var/log/aslเช่น

rm -rf /var/log/asl/*.asl

1
คุณช่วยอธิบายได้ไหมว่าทำไม iterm ถึงถูกชะลอตัวลงโดยโฟลเดอร์บันทึกนี้และมีสิ่งใดบ้างที่สามารถทำได้เพื่อหยุดปัญหานี้ไม่ให้เกิดขึ้นจริง?
เดวิด

2
@david คุณสามารถตรวจสอบลิงค์นี้เพื่อทำความเข้าใจสาเหตุที่ทำให้แท็บใหม่ทำงานช้า apple.stackexchange.com/a/71930/89583
Mishra

ว้าว --- ขอบคุณมาก --- สำหรับ iterm2 ดูเหมือนว่าคำตอบคือการใช้คำแนะนำที่ด้านล่างของหน้านั้น (/ bin / bash -il) จากคนที่ลงคะแนนเป็น -1 ใช้งานได้ดี
เดวิด

12

ตามความคิดเห็นจาก Archan Mishra ด้านบนสำหรับ iTerm 2 คำตอบคือตั้งค่าคำสั่งเทอร์มินัลที่กำหนดเอง /bin/bash -il ซึ่งข้ามการค้นหาบันทึก ASL ระบบอย่างสมบูรณ์ iterm2 เปิดทันที


1

นี่คือขั้นตอนที่ฉันใช้เพื่อปรับความเร็วการเริ่มต้นเชลล์ของฉันและลดความล่าช้าในการดำเนินการคำสั่ง -

  1. หากคุณใช้ powerlevel9k ฉันจะแนะนำให้เปลี่ยนเป็นpowerlevel10kทันที

Powerlevel10k เป็นธีมสำหรับ Zsh มันเน้นถึงความเร็วความยืดหยุ่นและประสบการณ์นอกกรอบ เป็นการปรับปรุงใหม่ของชุดรูปแบบ Powerlevel9k zsh ยอดนิยม ดูเหมือนว่าได้รับการกำหนดค่าเดียวกัน แต่ทำให้แสดงผลได้เร็วขึ้น 10-100 ครั้ง มันปรับให้เหมาะสมกับทุกระดับของกองซ้อนจนถึงการใช้ libgit2 เวอร์ชันที่ถูกแก้ไขซึ่งสามารถสแกน repo ได้เร็วกว่าต้นฉบับ 4 เท่า มันสามารถลบความล่าช้าในการเริ่มต้นของ Zsh แม้ว่าจะไม่ได้เกิดจากธีมที่มีคุณสมบัติเช่นพรอมต์ทันที

  1. ไปที่การตั้งค่า -> โปรไฟล์ -> ทั่วไป -> คำสั่งและเลือกตัวเลือกคำสั่งแทนการเข้าสู่ระบบเชลล์และวางคำสั่งด้านล่างในกล่องที่อยู่ใกล้เคียง
login -pfq username /usr/local/bin/zsh -il

คุณจะไม่เห็นเวลาเข้าสู่ระบบล่าสุดที่พิมพ์เมื่อเริ่มแท็บใหม่ทันที หาก zsh ไม่ปรากฏในตำแหน่ง / usr / local / bin / zsh คุณจะต้องติดตั้ง zsh โดยใช้ brew ค่าเริ่มต้น zsh ที่จัดทำโดย mac คือที่ / usr / bin / zsh และอาจใช้รุ่นที่เก่ากว่าเช่น 5.2 ซึ่งอาจทำให้ความเร็วช้าเมื่อใช้กับ iTerm หรือ oh-my-zsh

  1. หากต้องการวางอย่างรวดเร็วใน zsh ให้รันคำสั่งด้านล่างในเทอร์มินัล
mkdir -p $ZSH_CUSTOM/lib && touch $ZSH_CUSTOM/lib/misc.zsh
  1. จุดที่ 2 ควรดูแลเวลาเข้าสู่ระบบช้า แต่เพียงเพื่อความปลอดภัยรันคำสั่งด้านล่าง
mkdir -p .hushlogin
  1. มีปลั๊กอินจำนวนมากที่คุณอาจใช้ซึ่งช้าและสร้างความล่าช้า คุณต้องชี้ให้เห็นปลั๊กอินเหล่านี้และนำออก สำหรับสิ่งนี้คุณจะต้องทำโปรไฟล์ zsh ตามลิงค์นี้สำหรับรายละเอียดเพิ่มเติม -

https://stevenvanbael.com/profiling-zsh-startup


ยินดีต้อนรับสู่ Super User! กรุณาอย่าโพสต์คำตอบเดียวกันกับหลายคำถาม หากข้อมูลเดิมตอบทั้งสองคำถามจริง ๆ แล้วคำถามหนึ่ง (โดยปกติจะเป็นคำถามที่ใหม่กว่า) ควรปิดเหมือนกันกับคำถามอื่น คุณสามารถระบุสิ่งนี้ได้ด้วยการลงคะแนนเพื่อปิดเป็นซ้ำหรือหากคุณไม่มีชื่อเสียงเพียงพอให้ยกธงขึ้นเพื่อระบุว่าซ้ำกัน มิฉะนั้นปรับคำตอบสำหรับคำถามนี้และไม่เพียงแค่วางคำตอบเดียวกันในหลาย ๆ ที่
DavidPostill
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.