Tput

컴퓨팅에서 tput은 터미널 기능을 활용하는 표준 유닉스 운영체제 명령어이다.

시스템에 따라 tput은 terminfo 또는 termcap 데이터베이스를 사용하며, 터미널 유형에 대한 환경도 살펴본다.

역사
tput은 1980년대 초 유닉스 시스템 V에 제공되었다. AT&T tput의 복제본은 1986년 9월 mod.sources 뉴스그룹(이후 comp.sources.unix) 7권에 제출되었다. 시스템 V 프로그램과 달리, 이 복제본은 terminfo 대신 termcap을 사용했다. cm (커서 주소 지정) 기능에 대한 명령줄 매개변수를 허용했고, terminfo 기능 이름을 인식했다.

시스템 V 릴리스 3은 서로 다른 초기화 기능을 새로운 옵션 init으로, 재설정 기능을 reset으로 통합하여 터미널을 초기화하거나 재초기화하는 tput 사용을 간소화한 개선된 버전을 제공했다. 시스템 V 릴리스 3.2는 terminfo 데이터베이스에 swidm (enter_doublewide_mode)와 같은 몇 가지 프린터 관련 기능을 추가하여 tput이 사용할 수 있게 했다. 또한 색상 기능도 추가했다.

시스템 V 릴리스 4는 tput이 사용할 수 있는 표준화된 ANSI 색상 기능 setaf와 setab를 포함한 추가 terminfo 기능을 정의했다.

BSD 플랫폼은 4.3BSD-Reno (1990년 6월)에 tput의 다른 구현을 제공했다. 이 구현은 termcap을 사용했으며, termcap 기능 이름만 인식했고, 커서 주소 지정에 대한 명령줄 매개변수를 허용하지 않았다. FreeBSD는 1994년에 이를 사용하여 하나 또는 두 개의 숫자 명령줄 매개변수를 허용하도록 개선했다.

로스 리지(Ross Ridge)의 mytinfo 패키지(1992년)는 termcap 또는 terminfo 기능 이름을 모두 허용하는 tput을 제공했다. 리노 구현과 마찬가지로, 매개변수화된 기능에 명령줄 인수를 전달하지 않았다. ncurses는 1995년 6월 mytinfo 코드를 통합했다. 초기 버전은 -S 옵션을 추가하고, 시스템 V 릴리스 4 문서에 설명된 대로 명령줄 매개변수를 해석했다.

이식성
오픈 그룹은 하나의 옵션(-T, 터미널 유형 지정)과 세 개의 키워드(init, clear, reset)를 정의한다.
대부분의 구현은 필요한 매개변수와 함께 터미널 기능의 이름을 허용한다.
그러나 일부 구현은 termcap 이름을 예상하는 반면, 다른 구현은 terminfo 이름을 예상한다.

모든 시스템 V 릴리스 4 구현과 호환되도록 설계된 구현은 -S 옵션(tput이 표준 입력에서 데이터를 읽도록 지시)과 추가 키워드 longname도 인식한다. 또한 명령줄 매개변수를 허용하며, 일반적으로 매개변수의 형식으로 숫자 매개변수와 문자열 매개변수를 구별하고, 모든 숫자로 구성된 문자를 확인한다. 예를 들어 함수 키 레이블을 숫자로 구성된 문자열로 설정하는 것은 불가능하다. 다른 접근 방식을 사용하여 ncurses는 문자열 매개변수를 사용하는 terminfo 기능 테이블을 통해 예상되는 매개변수 유형을 결정하여 모호성을 제거한다.

 같이 보기 
 유닉스 명령어 목록

 각주 

더 읽어보기


 외부 링크 

매뉴얼 페이지


 ncurses용 tput(1) 매뉴얼 페이지
 AIX

 SCO

 SGI
 Sun


튜토리얼
 Bash Prompt HOWTO에서 tput을 이용한 색상 및 커서 이동
 IBM DeveloperWorks에서 tput 알아보기

분류:텍스트 모드
분류:유닉스 SUS2008 유틸리티