화면에 쓸 것으로 예상되는 명령의 출력을 구문 분석하려고합니다. 원점으로 이동 제어 시퀀스 (VT220의 경우 ESC[1;1H) 로 구분 된 데이터가 있습니다 . 마지막 부분 만 필요합니다 (예 : 마지막으로 이동 한 후).
나는이 여러 가지 방법 (주로 awk와 sed)을 시도했지만 문제는 항상 제어 시퀀스의 일부가 쉘뿐만 아니라 프로그램에 특별한 의미를 가지고 있으며 tput의 출력을 대체 할 때 인용 할 수 없다는 것입니다 .
어떤 제안?
편집하다:
다음은 내가 구문 분석하려고하는 예입니다 ( ESC이스케이프 문자입니다).
Page 1; line 1
Page 1; line 2
ESC[1;1HPage 2; line 1
Page 2; line 2
ESC[1;1HPage 3; line 1
Page 3; line 2
프로그램을 실행 한 후 터미널에있을 것입니다 다음을 얻으려고합니다.
Page 3; line 1
Page 3; line 2
구문 분석하려는 실제 텍스트의 예를 들어 주시겠습니까?
—
terdon
이러한 종류의 작업은 스크립팅 언어로 수행하는 것이 가장 쉽습니다.
—
dangph
@bugmenot, 어떤 플랫폼에 있습니까? 2 분 안에 Python 또는 PowerShell에서 스크립트를 사용할 수 있습니다.
—
dangph