종종 다른색으로 출력하고 싶을 때가 있다.
쉘은 화면에 출력을 할 때, 컬러를 변경할 수 있다.
% echo -e "\033[31m 글자색:빨강 \033[0m" 글자색:빨강 |
출력하고 싶은 글자에 옵션을 주면 원하는 컬러로 출력 가능하다.
옵션은 쉘에서 적용을 받기 때문에,
프로그램을 만들때도 사용 가능하다.
칼러 값 변환 테이블이 있으니, 원하는 값으로 설정하면 된다.
위 테이블에 나와있는 컬러로 출력해보자.
아래와 같이 결과가 나온다.
※ 컬러를 변경할때 \033 으로 시작을 해도 되고, \x1b 로 시작해도 된다.
※ \033 은 8진수 33을 의미하는 것이고, \x1b 는 16진수를 의미한다.
동일한 원리를 이용하여, 프롬프트도 컬러를 변경할 수 있다.
프롬프트 변경은 $PS1 환경변수를 변경하면 된다.
위와 같이 옵션을 원하는대로 변경하면, 프롬프트도 변경할 수 있다.
※ [34;1m 을 [1;34m 으로 표기해도 된다. 순서를 바꿔도 상관없다.
출처옵션은 쉘에서 적용을 받기 때문에,
프로그램을 만들때도 사용 가능하다.
#include <stdio.h> int main() { printf("\033[34m 글자색:파랑 \033[0m\n"); return 0;
}
글자색:파랑 |
칼러 값 변환 테이블이 있으니, 원하는 값으로 설정하면 된다.
출처 : https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
위 테이블에 나와있는 컬러로 출력해보자.
#include <stdio.h> int main() { printf("\x1b[30m" " Black" "\x1b[0m" "\n"); printf("\x1b[31m" " Red" "\x1b[0m" "\n"); printf("\x1b[32m" " Green" "\x1b[0m" "\n"); printf("\x1b[33m" " Yellow" "\x1b[0m" "\n"); printf("\x1b[34m" " Blue" "\x1b[0m" "\n"); printf("\x1b[35m" " Magenta" "\x1b[0m" "\n"); printf("\x1b[36m" " Cyan" "\x1b[0m" "\n"); printf("\x1b[37m" " White" "\x1b[0m" "\n"); printf("\x1b[30;1m" " Bright Black" "\x1b[0m" "\n"); printf("\x1b[31;1m" " Bright Red" "\x1b[0m" "\n"); printf("\x1b[32;1m" " Bright Green" "\x1b[0m" "\n"); printf("\x1b[33;1m" " Bright Yellow" "\x1b[0m" "\n"); printf("\x1b[34;1m" " Bright Blue" "\x1b[0m" "\n"); printf("\x1b[35;1m" " Bright Magenta" "\x1b[0m" "\n"); printf("\x1b[36;1m" " Bright Cyan" "\x1b[0m" "\n"); printf("\x1b[37;1m" " Bright White" "\x1b[0m" "\n"); printf("\n"); return 0; } |
아래와 같이 결과가 나온다.
※ 컬러를 변경할때 \033 으로 시작을 해도 되고, \x1b 로 시작해도 된다.
※ \033 은 8진수 33을 의미하는 것이고, \x1b 는 16진수를 의미한다.
동일한 원리를 이용하여, 프롬프트도 컬러를 변경할 수 있다.
프롬프트 변경은 $PS1 환경변수를 변경하면 된다.
% export PS1="[\[\e[01;31m\]\u@\h\[\e[00m\] : \[\033[1;34m\]\w ]\n% " |
위와 같이 옵션을 원하는대로 변경하면, 프롬프트도 변경할 수 있다.
※ [34;1m 을 [1;34m 으로 표기해도 된다. 순서를 바꿔도 상관없다.
https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
http://blog.muabow.com/entry/C언어-출력에-색깔-입히기
http://jswlinux.tistory.com/145
댓글 없음:
댓글 쓰기