패키지 관리자와 같은 명령줄 도구는 무엇을 stdout/stderr에 인쇄해야 합니까?

패키지 관리자와 같은 명령줄 도구는 무엇을 stdout/stderr에 인쇄해야 합니까?

저는 사용 가능한 패키지 관리자를 사용하여 새로 설치된 운영 체제를 구성하는 프로젝트를 진행 중입니다. 패키지 관리자의 몇 가지 예는 aptUbuntu, brewOSX brew cask또는 pacmanArch용일 수 있습니다.

무슨 일이 일어났는지에 따라 stdout이나 stderr에 컬러 메시지를 표시하고 싶습니다. 어떤 유형의 색상과 콘텐츠를 사용해야 하며 출력을 어디에 전송해야 하는지에 대한 지침을 찾고 있습니다.

잠시 고민한 끝에 다음과 같은 결론을 내렸습니다.

  • 상태 메시지는 파란색이거나 무색일 수 있으며 또는 -v플래그가 지정된 경우에만 표준 출력으로 인쇄됩니다.--verbose

    전임자:

    -* installing commandline-tools
    
  • 성공 메시지는 녹색으로 표시되고 기본적으로 stdout에 인쇄됩니다(또는 자세한 플래그가 제공되면 확실하지 않습니다).

    전임자:

    -* installed commandline-tools
    
  • 실패 메시지는 빨간색으로 표시되며 기본적으로 stderr에 인쇄됩니다.

    전임자:

    -* failed to install commandline-tools
    

생각과 의견은 환영하지만 몇 가지 명확한 출처/지침도 감사하겠습니다.

답변1

이 스니펫을 사용하면 원하는 색상을 얻을 수 있습니다.

for i in {0..7};
do
    tput setaf $i // color next echo command
    echo "tput setaf $i"
    tput sgr0     // reset normal colors
done

나는 추천한다아니요원시 ANSI 이스케이프 코드를 사용하십시오.

관련 정보