ฉันใช้ 'zsh' ในบางไดเรกทอรีเมื่อฉันทำ 'ls --color = tty' ฉันเห็นบางไดเรกทอรีมี 'ข้อความสีฟ้า' พร้อม 'พื้นหลังสีเขียว' ซึ่งทำให้อ่านยาก
คุณช่วยบอกวิธีกำหนดค่านี้ได้ไหม
ขอขอบคุณ.
ฉันใช้ 'zsh' ในบางไดเรกทอรีเมื่อฉันทำ 'ls --color = tty' ฉันเห็นบางไดเรกทอรีมี 'ข้อความสีฟ้า' พร้อม 'พื้นหลังสีเขียว' ซึ่งทำให้อ่านยาก
คุณช่วยบอกวิธีกำหนดค่านี้ได้ไหม
ขอขอบคุณ.
คำตอบ:
สมมติว่าคุณใช้ GNU lsคุณสามารถระบุสีด้วยตัวแปรสภาพแวดล้อม LS_COLORS (โปรดทราบว่านี่คือlsคุณลักษณะGNU และไม่เฉพาะกับ zsh)
CoreUtils GNU มีโปรแกรมที่เรียกว่าdircolorsเพื่อช่วยให้คุณแปลงไฟล์กำหนดค่าได้ง่ายให้เป็นตัวแปร LS_COLORS ที่ซับซ้อน (ซับซ้อน) ดูman dircolorsคำสั่งและman dir_colorsไวยากรณ์ไฟล์การกำหนดค่า
คุณสามารถ
dircolors --print-database >! dircolors.defaultเพื่อบันทึกค่าเริ่มต้น (มันมีข้อความคำอธิบายบางส่วน) แล้วปรับเปลี่ยนเมื่อเสร็จแล้วคุณจะต้องdircolorsเปลี่ยนให้เป็น LS_COLORS ที่เหมาะสม โปรดทราบว่าdircolorsเอาต์พุตในรูปแบบ bash และ csh สำหรับzshคุณควรใช้bashเอาต์พุตที่จัดรูปแบบ
PS: ใช้แทน ls --color=autols --color=tty
LS_COLORไม่ทำงานโดยค่าเริ่มต้นใน zsh ด้วยเหตุผลบางอย่าง ดูโพสต์อื่น ๆ อีกมากมายที่บ่นเกี่ยวกับเรื่องนี้: 1) superuser.com/questions/700406/zsh-not-recognizing-ls-colors 2) github.com/robbyrussell/oh-my-zsh/issues/5349