มีวิธีการเปลี่ยนสีที่ใช้ในคอนโซล TTY บน Linux หรือไม่?


14

โดย "สีที่แตกต่างกัน" ผมสิ่งที่หมายถึงการเปลี่ยนแปลงเช่นสีดำจาก#000000ไป#111111และ "TTY คอนโซล" ผมหมายถึงสิ่งที่คุณได้รับเมื่อคุณทำCtrl+ Alt+ F1จาก X11 ไม่จำลอง terminal เหมือนหรือxtermurxvt

ฉันใช้ Arch Linux แต่ฉันคิดว่ามันมีอะไรเพิ่มเติมเกี่ยวกับโปรแกรมที่ให้ TTY ( agettyฉันคิดว่า)


เทอร์มินัลไม่ทำงานในแง่ของสีฐานสิบหก - พวกเขาใช้รหัสสีเช่นที่พบใน "/ etc / shell-colours"
new123456

1
@ new123456 - ฉันไม่มีไฟล์ชื่อ "shell-colours" ที่ใดก็ได้ภายใต้/
Austin Hyde

ฮะ. คุณไม่ได้ระบุการกระจายของคุณที่นี่ - ฉันกำลังใช้งาน Zenwalk ดังนั้นการกระจายของคุณอาจแตกต่างกันไป ค้นหาcolor in bashเพื่อรับรายการของทางหนีทั้งหมด
new123456

2
@ new123456 - ฉันพูดถึงว่าฉันกำลังใช้ Arch และฉันไม่ได้มองหาลำดับการหลบหนีของ bash สำหรับสีเช่น\e[0;30mสีดำฉันกำลังมองหาวิธีในการปรับแต่งสีจริงสำหรับแต่ละสีที่มีชื่อ
Austin Hyde

1. ขออภัย - ฉันดูแท็กก่อน) 2. แค่ข้อมูลไม่ใช่ทั้งหมดที่เกี่ยวข้องกับคำถาม แต่เกี่ยวข้องกับโดเมน
new123456

คำตอบ:


3

settermคำสั่งคือสิ่งที่คุณกำลังมองหา

setterm -foreground black -background white

แก้ไข

ไม่ไม่มีวิธีในการเปลี่ยนชื่อสีตามที่คุณร้องขอ พวกเขาจะไม่อ้างอิงถึงวิธีการใด ๆ ใน curses, terminfo หรือเทอร์มินัลเอง คุณสามารถเปลี่ยนคำจำกัดความของดัชนีสี (0-15 ฉันคิดว่า) โดยการแก้ไขแหล่งเคอร์เนลและการคอมไพล์ใหม่


ไม่นั่นไม่ใช่สิ่งที่ฉันกำลังมองหา ฉันต้องการเปลี่ยนคำจำกัดความของสีไม่ใช่สีพื้นหน้าและสีพื้นหลัง
Austin Hyde

13

ทั้งหมดนี้เป็นไปได้และเป็นสิ่งที่ฉันทำในการตั้งค่า Arch ของฉัน

คุณสามารถทำสิ่งนี้ในเชลล์สคริปต์และให้มันทำงานเมื่อเข้าสู่ระบบ:

if [ "$TERM" = "linux" ]; then
    echo -en "\e]P0151515" # Black
    echo -en "\e]P1ac4142" # Red
    ...
    echo -en "\e]PEac4142" # Bright Cyan
    echo -en "\e]PFac4142" # Bright White
    clear # Clear artifacts
fi

\e]P0ไป\e]PF(ฐาน 16) เป็นลำดับหนีคุณจะต้องตั้ง 16 (8 ครึ่งสว่างสดใส 8 สี) 151515หลังจากที่คุณใส่เช่นสีทดแทนที่คุณต้องการ


ดูเหมือนจะไม่ทำงานในอูบุนตู 16.04 กับ bash fwiw
G Gordon Worley III

2

นี่คือคำสั่งที่ดีที่สุดที่ฉันรู้:

setterm -clear all -foreground green -bold -store

คุณสามารถมี 8 สีที่แตกต่างกันเท่าที่ฉันสามารถบอกได้ อาจจะมากกว่านี้ด้วยการใช้หน้าสว่างพื้นฐาน 8?

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