"less -R"로 파이프할 때 컬러 출력을 유지하는 방법은 무엇입니까?

"less -R"로 파이프할 때 컬러 출력을 유지하는 방법은 무엇입니까?
$ ffmpeg -v debug ... 

컬러 출력.

$ ffmpeg -v debug ... |& less -R

출력이 느립니다.

출력을 파이프로 연결할 때 출력 색상을 어떻게 지정합니까?

답변1

다음과 같은 옵션이 없는 명령의 경우 --color=always:

script -c "ffmpeg -v debug ..." /dev/null < /dev/null |& less -R

그것이 하는 일은 script터미널 세션에서 명령을 실행하는 것입니다.

편집: 명령 문자열 대신 배열을 제공하려면 다음 zsh 래퍼 스크립트가 작동하는 것 같습니다.

#!/usr/bin/env zsh
script -c "${${@:q}}" /dev/null < /dev/null |& less -R

답변2

script명령줄을 일반 배열 대신 문자열로 예상하는 의 대안으로 특수 모드가 있습니다.렙텔:

reptyr -L ffmpeg -v debug ... < /dev/null |& less -R

reptyr모든 버전에 작업 -L옵션이 있고 정상적으로 허용되는 것은 아닙니다 < /dev/null. 내 풀 요청을 참조하세요.

관련 정보