
내 Bash 스크립트에 다음 줄이 있습니다.
./tg/tg -c $THIS_DIR/tg/config 2>&1 | grep ".\+"
그러나 이것은 작동하지 않습니다. tg
실행 중이며 지속적으로 출력을 생성합니다(즉, 종료되지 않음). 일부 결과를 필터링하고 싶지만 범용 ".\+"
모드를 사용해도 작동하지 않습니다. 또한 삭제할 때 | grep ".\+"
출력을 얻을 것이라고 확신합니다. 어떻게 작동하게 할 수 있나요?
답변1
"의 경우grep"계속 입력하는 동안 - --line-buffered
옵션 사용:
./tg/tg -c $THIS_DIR/tg/config 2>&1 | grep --line-buffered ".\+"
--line-buffered
출력 시 라인 버퍼링을 사용합니다. 이로 인해 성능이 저하될 수 있습니다.