¡Hola, Mondo!

[Shell Script] 여러 줄 겹쳐쓰기 (프로세스 상태 확인) 본문

Programming/Shell Script

[Shell Script] 여러 줄 겹쳐쓰기 (프로세스 상태 확인)

베지(Beji) 2016. 6. 1. 10:10


1. tput 으로 여러 줄 겹쳐쓰기를 사용한 프로세스 상태 확인






2. ANSI Escape문자로 여러 줄 겹쳐쓰기를 사용한 프로세스 상태 확인


2-1. printf 사용




2-2. echo 사용







// output :





3. ANSI Escape character

: 시스템을 제어하기 위한 문자로 커서이동, 화면 지우기, 스크롤, 색상 출력 등의 화면 제어를 할 수 있다.



escape(ESC)문자 code

키 종류

설명

\033c

화면을 지우고 커서를 1행 1열로 이동

\033[nA

커서를 현 위치에서 위로 n칸 이동.

\033[nB

커서를 현 위치에서 아래로 n칸 이동.

\033[nC

커서를 현 위치에서 오른쪽으로 n칸 이동.

\033[nD

커서를 현 위치에서 왼쪽으로 n칸 이동.

\033[n;mH or

\033[n;mf

커서를 m열 n행으로 이동.

\033[nJ

n=0 이면 현 위치에서 화면의 끝까지 삭제.

n=1 이면 화면의 처음에서 현 위치까지 삭제.

n=2 이면 화면 전체를 삭제.

\033[nK

n=0 이면 현재 커서의 위치에서 행의 끝까지 삭제.

n=1 이면 현재 커서에서부터 행의 처음까지 삭제.

n=2 이면 현재 커서가 있는 행을 모두 삭제.

\033[nL

n개 행을 현재 커서 위치에 삽입.

\033[nM

현재 커서 위치에서부터 n개 행을 삭제.

\033[nX

현재 커서 위치에서부터 n개 문자를 삭제.

\033[nP

현재 커서 위치에서 행의 처음부터 n개 문자를 삭제.

\033[nm

화면의 색 지정, 여러가지 색을 지정할 때는 <;>를 사용하여 구분.

\033[x;yr

가로는 x열, 세로는 y행만큼의 화면 크기를 설정.




4. tput 명령어


tput ed
스크린의 끝까지 지운다
tput cuu1
한라인 위로 이동

tput el1
첫번째 라인을 지운다
tput el
마지막 라인을 지운다
tput cup 23 4
4(column) 23(row)으로 커서를 이동시킨다
tput civis
커서가 안보이게 한다
tput cnorm
커서가 다시 보이게 한다
tput setab [1-7]
ANSI escape를 사용해서 배경색을 지정한다
tput setb [1-7]
배경색을 지정한다
tput setaf [1-7]
ANSI escape를 사용해서 foreground colour를 지정한다(글자 색이 바뀐다)
tput setf [1-7]
foreground colour를 지정한다
tput bold
볼드 모드로 전환
tput dim
half-bright 모드로 전환
tput smul
밑줄 모드로 전환
tput rmul
밑줄 모드에서 나오기
tput rev
reverse 모드로 전환
tput smso
표준출력 모드 입력(bold on rxvt)
tput rmso
표준출력 모드 종료
tput sgr0
모든 속성 끄기
tput sc
커서 위치 저장
tput rc
커서 위치 원상복귀
tput lines
터미널의 라인수를 출력
tput cols
터미널의 열을 출력
tput cub N
N 문자만큼 좌측으로 이동
tput cuf N
N 문자만큼 우측으로 이동
tput cub1
왼쪽으로 한칸 이동
tput cuf1
오른쪽을 한칸 이동
tput ll
마지막 라인 첫번째 컬럼
tput cuu1
한라인 위로 이동
tput ech N
N개의 문자 삭제
tput clear
스크린 지우고 홈으로 커서 이동
tput el1
첫번째 라인을 지운다
tput el
마지막 라인을 지운다
tput ed
스크린의 끝까지 지운다
tput ich N
N문자 삽입 
tput il N
N개의 라인을 삽입한다






'Programming > Shell Script' 카테고리의 다른 글

[쉘 스크립트] if문  (0) 2016.11.01
Comments