konsole의 bash에서 프롬프트 색상 변경

konsole의 bash에서 프롬프트 색상 변경

PS1다음 과 같이 변수를 변경하여 콘솔의 프롬프트 색상을 변경합니다 .bashrc.

PS1="${debian_chroot:+($debian_chroot)}$COLOR_USER\u@$COLOR_HOST\h:$COLOR_PWD\w>$COLOR_ORDER"

COLOR_...변수입니다.

그러나 이는 콘솔 색상 구성표에 의해 무시됩니다. 콘솔이 내 설정을 덮어쓰는 것을 어떻게 중지합니까 .bashrc?

답변1

쉘과 같은 터미널에서 실행되는 애플리케이션은이스케이프 시퀀스후속 출력의 모양을 변경하려면 터미널로 이동하세요. 문자 속성을 변경하기 위한 이스케이프 시퀀스는 두 개의 문자 시퀀스(bash로 작성할 수 있음)를 나타내고CSI Pm mCSIESC [$'\e['오후무엇을 변경할지 결정하는 시퀀스입니다.

아마도 귀하의 구성에서는 8가지 표준 색상, 즉 빨간색 텍스트를 사용하는 $COLOR_USER것 같습니다 . $'\e[31m'표준 색상의 외관은 단말기에서 자유롭게 선택할 수 있습니다. Konsole에서 테마를 사용하는 경우 필요에 따라 색상을 조정할 수 있습니다. 좋은 테마는 올바른 색상을 선택하지만 일부 Konsole 테마는 색상을 완전히 변경합니다.

이스케이프 시퀀스를 사용하여 빨간색-녹색-파란색 구성 요소로 색상을 지정할 수 있습니다.CSI 3 8 ; 2 ; Pr ; Pg ; Pb m찬성,PG그리고선두각각 0에서 255까지의 빨간색-녹색-파란색 구성 요소입니다. Konsole은 이를 존중할 것입니다. 예를 들어 사용자 이름을 빨간색으로 표시하려면 다음을 수행하세요.

COLOR_USER=$'\e[38;2;128;0;0m'

또는 응용 프로그램에서 지정한 색상을 완전히 어지럽히기보다는 존중하는 색상 테마를 사용하세요.

관련 정보