대화형 출력 필터링(상단)

대화형 출력 필터링(상단)

top기능을 그대로 유지하면서 "자동 업데이트" 프로그램의 출력을 필터링하려면 어떻게 해야 합니까 ?

top예를 들어, 의 출력 에서 ​​내 사용자 이름을 강조표시하고 싶습니다 . 내 생각은 다음과 같은 것을 사용하는 것입니다.

top | grep --color -E "user|$"

사용자 이름이 실제로 강조 표시되는 한 작동하지만 커서가 최상위 프로그램에 있어야 할 위치에 있지 않고 마지막 줄이 누락되었습니다.

wget(이스케이프 시퀀스를 사용하여 진행률 표시줄을 강조 표시하려고 함) 및 rsync와 같은 다른 대화형 셸 프로그램에서도 비슷한 결과를 얻었습니다. 대화형 프로그램의 출력을 적절하게 필터링하려면 어떻게 해야 합니까?

답변1

이것이 효과가 있을지는 모르겠습니다(저는 사용해 본 적이 없습니다).

grc를 사용해 보세요.

http://korpus.juls.savba.sk/~garabik/software/grc.html

나는 이 게시물에서 tail -f와 함께 작동하도록 하는 것을 보았습니다. 또한 시도해 볼 수 있는 다른 여러 가지 방법도 언급합니다.

https://unix.stackexchange.com/questions/8414/how-to-have-tail-f-show-color-output?newsletter=1&nlcode=17737|321c

HTH

약간 관련된 예제 코드를 찾았습니다. https://unix.stackexchange.com/questions/26313/color-find-output

찾기를 top으로 바꾸고 *bigbird*)를 사례(내 사용자 이름)로 사용하는 것과 약간 유사한 사례 설명으로 바보짓을 했습니다. 스크립트는 마음에 들지 않았지만 일부 색상이 지정된 출력을 생성했습니다(단순히 해킹하고 제대로 코딩하지 않았기 때문에 오류 메시지와 함께). 이는 (적어도 일부) 개념 증명인 것으로 보입니다.

관련 정보