다음 명령에 대해서만 터미널 텍스트 색상 변경

다음 명령에 대해서만 터미널 텍스트 색상 변경

그래서 (터미널에서) 컴파일을 많이 하면 현재 컴파일 결과와 이전 컴파일 결과를 구별하기가 어렵기 때문에 명령에 일부 텍스트를 넣어 출력 텍스트를 만들 수 있는지 궁금합니다. 명령에는 다양한 색상(예: 녹색, 빨간색, 파란색)이 있습니다.

예를 들어 그냥 실행하는 대신

gcc something.c

나는 다음과 같은 것을 실행하고 싶다

gcc something.c textcolor=green

출력 색상은 녹색이지만 다음 색상은 기본 색상으로 되돌아갑니다.

답변1

터미널 이스케이프를 사용하면 tput편리합니다.

tput setaf 2; gcc something.c; tput sgr0 # 2 is color code for green

이는 일부 도구에서 생성된 메이크파일을 포함하여 콘솔 색상을 변경하는 다른 모든 것과 예측할 수 없게 상호 작용합니다.

답변2

시각적으로 독특한 프롬프트를 설정하는 것이 좋습니다. 내 것은 다음과 같습니다(굵게, 기울임꼴, 금색(256 색상 지원 필요)):

PS1=$'\\[\E[0;1;3;38;5;136m\\]blahblah$ \\[\E[m\\]'

또한 많은 출력을 생성하는 명령을 다시 실행하고 새 실행에서 많은 출력이 생성될 것으로 예상되는 경우 일반적으로 다시 실행하기 전에 프롬프트에서 몇 개의 별도 Enter 키를 누릅니다. 되돌아보면 그 “간극”을 찾는 것이 더 쉽습니다.

관련 정보