ls --color=auto, 기본적으로 --color=always가 있는데 왜 그러한 옵션을 제공합니까?

ls --color=auto, 기본적으로 --color=always가 있는데 왜 그러한 옵션을 제공합니까?

에서 man ls:

With --color=auto,
       ls emits color codes only when standard output is connected to a terminal.

그냥 호기심. 표준 출력이 터미널에 연결되지 않은 경우 색상을 방출하면 어떤 영향이 있습니까?

색상을 방출하려면 추가 계산이 필요하므로 stdout이 터미널에 연결되어 있지 않으면 필요하지 않으며 일부 계산을 저장할 수 있습니까?

답변1

이제 이해가된다.

색상을 설명하는 일부 추가 텍스트가 출력 color codes되며 일반적 으로 터미널에서 사용됩니다.ls --color=always

그러나 의 경우 ls --color=always > test.txt색상을 설명하는 추가 텍스트가 유지되어 저장됩니다.

예를 들어 두 파일을 모두 ls --color=always > file1.txt열어 보면 차이점을 확인할 수 있습니다.ls --color=auto > file2.txtnano

관련 정보