irssi를 사용하여 마지막 N줄을 실시간으로 기록하세요.

irssi를 사용하여 마지막 N줄을 실시간으로 기록하세요.

저는 irssi(및 일반적으로 IRC)를 처음 접했고 irssi의 마지막 N 줄을 텍스트 파일에 기록하면 되지만 유사한 작업을 수행하는 방법에 대한 정보를 찾을 수 없습니다. 함수나 스크립트.

제가 하고 싶은 것은 채팅의 마지막 10줄 정도를 영상 위에 실시간으로 오버레이하는 것입니다. 이를 위해 디스크의 텍스트 파일이 변경될 때 업데이트되는 ffmpeg 필터를 사용할 수 있습니다. 그래서 제가 하고 싶은 것은 활성 irssi 세션의 최신 10줄을 텍스트 파일에 연속적으로 쓰는 것입니다.

어떻게 해야 하나요?

답변1

irssi예를 들어 이 명령의 출력을 실행하면 tail마지막 X 줄 수를 얻을 수 있습니다. cmd | tail -10.

seq귀하의 명령 대신 이 명령을 사용하십시오 irssi. 이 seq명령은 아래 예와 같이 1-100 사이의 일련의 숫자를 생성합니다.

$ seq 100 | tail -10
91
92
93
94
95
96
97
98
99
100

파일로 덤프하려면 /var/log/mychat.log리디렉션 출력을 사용할 수 있습니다.tail>

$ seq 100 | tail -10 > afile
$ more afile 
91
92
93
94
95
96
97
98
99
100

로그 파일에 기록된 출력을 보려면 tee파일 리디렉션 대신 이 명령을 사용할 수 있습니다 >.

$ seq 100 | tail -10 | tee afile
91
92
93
94
95
96
97
98
99
100

관련 정보