카테고리 없음
Bash - 터미널에 컬러 출력
SciomageLAB
2024. 10. 4. 12:06
반응형
컬러 모델
- 8bit
- 3/4bit
- 24bit
스타일 지정
텍스트 스타일
0~9까지 지정 가능한 스타일이 있다.
0;
디폴트 색으로 돌리기1;
밝게2;
어둡게3;
이탤릭4;
밑줄5;
blink(느리게)6;
blink(빠르게)7;
색상 반전8;
숨기기9;
취소선컬러 스타일
forground와 background값 두가지 컬러 모드를 지정해줄 수 있다.
3/4 bit에서 forground값은 3037 범위를 가지고 background는 4047사이 값을 가진다.
![[3_4bit.gif]]#!/bin/bash for i in {0..9} do for j in {30..37} do echo -n -e "\e[${i};${j}m*\e[0m" done echo "" done
8bit, 24bit RGB로 출력하기
forground는 38, background 48이 24bit 컬러모드로 출력함을 의미하는 숫자이다. 8bit는 38;05를; 또는 48;05를 24bit는 38;02; 48;02를 쓰면된다
![[Pasted image 20220404024812.png]]for code in {0..255}; do echo -n -e "\e[38;05;${code}m#"; done; echo -e "\e[0;0;0m" for code in {0..255}; do echo -n -e "\e[48;05;${code}m#"; done; echo -e "\e[0;0;0m"
24bit로 출력하기
3;38;255;0;0 이라면 이탤릭, 24bit, RGB값 255, 0, 0으로 출력을 한다는 의미이다. 아래의 코드는 forground와 background를 24bit로 이탤릭 스타일로 출력하는 예제이다.
![[Pasted image 20220404031658.png]]for code in {0..255}; do echo -n -e "\e[3;38;2;255;0;0mb"; done; echo -e "\e[0;0;0m" for code in {0..255}; do echo -n -e "\e[3;48;2;${code};0;0mb"; done; echo -e "\e[0;0;0m"
참고문헌
[Stackoverflow Bash 컬러 출력](# 컬러 모델- 8bit
- 3/4bit
- 24bit
스타일 지정
텍스트 스타일
0~9까지 지정 가능한 스타일이 있다.
0;
디폴트 색으로 돌리기1;
밝게2;
어둡게3;
이탤릭4;
밑줄5;
blink(느리게)6;
blink(빠르게)7;
색상 반전8;
숨기기9;
취소선컬러 스타일
forground와 background값 두가지 컬러 모드를 지정해줄 수 있다.
3/4 bit에서 forground값은 3037 범위를 가지고 background는 4047사이 값을 가진다.#!/bin/bash for i in {0..9} do for j in {30..37} do echo -n -e "\e[${i};${j}m*\e[0m" done echo "" done
8bit, 24bit RGB로 출력하기
forground는 38, background 48이 24bit 컬러모드로 출력함을 의미하는 숫자이다. 8bit는 38;05를; 또는 48;05를 24bit는 38;02; 48;02를 쓰면 된다. 아래 예시는 8bit로 0~255까지 컬러를 출력하는 예시이다.for code in {0..255}; do echo -n -e "\e[38;05;${code}m#"; done; echo -e "\e[0;0;0m" for code in {0..255}; do echo -n -e "\e[48;05;${code}m#"; done; echo -e "\e[0;0;0m"
24bit로 출력하기
3;38;255;0;0 이라면 이탤릭, 24bit, RGB값 255, 0, 0으로 출력을 한다는 의미이다. 아래의 코드는 forground와 background를 24bit로 이탤릭 스타일로 출력하는 예제이다.for code in {0..255}; do echo -n -e "\e[3;38;2;255;0;0mb"; done; echo -e "\e[0;0;0m" for code in {0..255}; do echo -n -e "\e[3;48;2;${code};0;0mb"; done; echo -e "\e[0;0;0m"
참고문헌
Stackoverflow Bash 컬러 출력
반응형