banner (유닉스)

banner는 유닉스 및 유닉스 계열 운영체제에서 제공되는 텍스트 기반 명령어로, 인수로 주어진 문자열을 큰 ASCII 아트 형태의 배너(문자)로 출력한다. 주로 콘솔 화면에 시각적인 강조를 위해 사용된다.

정의

  • 명령어 형식: banner [옵션] 문자열
  • 옵션은 거의 없으며, 문자열을 인수로 전달하거나 인수가 없을 경우 표준 입력으로부터 읽는다.
  • 출력은 고정된 8×8 점 행렬을 사용해 구성된 대문자와 특수 문자로 이루어진 대형 글씨다.

역사

  • 최초 banner 프로그램은 AT&T UNIX System V에 포함되어 있었으며 1970~80년대에 시스템 관리자들이 콘솔에 알림 메시지를 강조하기 위해 활용했다.
  • 이후 BSD 계열에 동일한 기능을 구현한 banner가 도입되었고, 현재는 GNU bsdmainutils 패키지·sysvbanner·util-linux 등 다양한 패키지에 포함되어 여러 리눅스 배포판에서 제공된다.

사용 예시

$ banner HELLO
 #     # ####### #       #       
 #  #  # #       #       #       
 #  #  # #       #       #       
 #  #  # #####   #       #       
 #  #  # #       #       #       
 #  #  # #       #       #       
  ## ##  ####### ####### #######

관련 명령

  • figlet, toilet 등: 폰트 파일을 이용해 다양한 형태의 ASCII 아트를 생성한다. banner는 고정된 글꼴만 지원하므로 출력 형태가 제한적이다.
  • echo, printf: 단순 문자열 출력에 사용되며, 배너와는 목적이 다르다.

제한점

  • 현대 터미널의 가변 폭 글꼴 및 Unicode 지원으로 인해 banner의 활용도가 감소하였다.
  • 비영문자(예: 한글)에서는 정상적으로 표시되지 않는다.

배포 및 패키지

  • Debian/Ubuntu: bsdmainutils 패키지에 포함.
  • Red Hat 계열: util-linux 혹은 별도 banner 패키지 제공 여부는 배포판에 따라 다름.

참고

banner 명령은 GNU 프로젝트에 의해 새로 개발된 것이 아니라, 원래 AT&T UNIX System V의 소스 코드를 기반으로 구현된 것이다. 현재도 간단한 스크립트나 부팅 메시지 등에서 가독성을 높이기 위한 용도로 제한적으로 사용된다.

둘러보기

더 찾아볼 만한 주제