tail -f -n20 <file>
파일의 마지막 20줄을 실시간으로 볼 수 있습니다 .
무언가에 대해 grep하려는 경우
tail -f <file> | grep <pattern>
여전히 활성 상태이지만 tail의 출력을 통해서만 grep됩니다. 즉, 처음부터 20줄의 출력이 없다는 의미입니다. (20개 행 중 5개만 내 패턴과 일치하면 출력에서 5개 행만 가져옵니다.)
내가 뭔가를하면
grep <pattern> <file> | tail -n20
20라인의 출력이 있지만 라이브도 아니고
cat <file> | grep <pattern> | tail -n20
파일의 마지막 n줄의 실시간 업데이트를 보는 방법뒤쪽에포도?
답변1
tee
프로세스 대체와 함께 사용할 수 있습니다 >()
.
tail -f -n 20 file.log | tee >(grep 'pattern')
이렇게 하면 마지막 20개 행이 표시 file.log
되고 결과가 표시됩니다 grep
.
답변2
에서는 처음부터 tail -fn20
만 작동합니다.20
tail
처음 20줄을 표시한 다음 계속합니다.모두새 행은 표시되는 즉시 추가됩니다(1행, 20행, 1000행).
또는 다른 말로 tail -fn20
하면 .tail -n20
tail -fn+1
여기에서 다음을 수행할 수 있습니다.
{ grep pattern | tail -n 20; tail -fn+1 | grep pattern; } < file
즉, 첫 번째 단계를 수동으로 수행한 다음 tail -f
나머지 단계를 모두 표시합니다.