리눅스 로그 파일 특정 라인만 출력하기 (sed, more, head, tail)
- 운영체제(OS)
- 2022. 12. 4.
리눅스에 있는 긴 로그 파일을 살펴보는 쉬운 방법은 윈도우로 파일을 옮겨서 메모장이나 노트패드++ 같은 툴로 보는 겁니다. 그러나 언제나 그런 환경이 주어지진 않습니다. 리눅스에서도 용량이 10~100MB를 넘는 긴 텍스트 파일을 확인할 수 있어야 합니다. 라인이 수천 수만줄이 넘어가면 cat으로 보기는 어렵습니다. 그럴 때 활용할 수 있는 리눅스 명령어들이 있습니다.
sed 명령어 사용 방법
sed는 -n 옵션과 함께 사용하면 원하는 라인의 텍스트만 출력합니다.
sed -n '확인할 라인p' file.txt
[예시]
[root@localhost ~]# sed -n '10p' line.txt
10번 라인입니다.
00번 라인~00번 라인을 출력할 땐 숫자를 두 개 넣으면 됩니다.
sed -n '시작라인, 종료라인p' line.txt
[예시]
[root@localhost ~]# sed -n '10,15p' line.txt
10번 라인입니다.
11번 라인입니다.
12번 라인입니다.
13번 라인입니다.
14번 라인입니다.
15번 라인입니다.
more, head, tail 사용 방법
페이지를 넘겨보듯 로그를 확인하고 싶거나, 맨 앞 또는 맨 뒷 줄의 일부 라인을 확인하고 싶은 경우 more, head, tail 같은 명령어를 활용할 수 있습니다.
more
more 파일명
[예시]
[root@localhost ~]# more line.txt
1번 라인입니다.
2번 라인입니다.
3번 라인입니다.
4번 라인입니다.
5번 라인입니다.
6번 라인입니다.
7번 라인입니다.
8번 라인입니다.
9번 라인입니다.
10번 라인입니다.
11번 라인입니다.
12번 라인입니다.
13번 라인입니다.
14번 라인입니다.
15번 라인입니다.
16번 라인입니다.
17번 라인입니다.
18번 라인입니다.
19번 라인입니다.
20번 라인입니다.
1번 라인입니다.
2번 라인입니다.
3번 라인입니다.
--More--(28%)
more은 한페이지에 담을 수 있는 만큼 출력하고 예시의 --More--(28%)처럼 출력을 완료한 비율 정보를 나타내며 출력을 멈춥니다. 이때 엔터키를 누르면 한 줄씩 추가로 출력하며 내용을 확인할 수 있습니다. 스페이스바를 누르면 한 페이지씩 출력하며 내용을 확인합니다.
head
head는 맨 앞의 00줄을 확인할 수 있습니다.
head -숫자 파일명
[예시]
[root@localhost ~]# head -10 line.txt
1번 라인입니다.
2번 라인입니다.
3번 라인입니다.
4번 라인입니다.
5번 라인입니다.
6번 라인입니다.
7번 라인입니다.
8번 라인입니다.
9번 라인입니다.
10번 라인입니다.
tail
more과 반대로 tail은 맨 뒤의 00줄을 확인할 수 있습니다.
tail -숫자 파일명
[예시]
[root@localhost ~]# tail -10 line.txt
11번 라인입니다.
12번 라인입니다.
13번 라인입니다.
14번 라인입니다.
15번 라인입니다.
16번 라인입니다.
17번 라인입니다.
18번 라인입니다.
19번 라인입니다.
20번 라인입니다.
내용을 정리하면 아래와 같습니다.
- 00번 라인 ~ 00번 라인의 내용을 보고 싶다 : sed -n ‘시작라인,종료라인p’ 파일명
- 맨 앞의 00줄을 보고 싶다 : head -숫자 파일명
- 맨 뒤의 00줄을 보고 싶다 : tail -숫자 파일명
- 업데이트 되는 로그를 실시간으로 보고 싶다 : tail -f 파일명
반응형
'운영체제(OS)' 카테고리의 다른 글
운영체제에서 마운트란? (파일 시스템 액세스) (0) | 2022.12.06 |
---|---|
x64는 64비트, x86은 32비트인 이유? (0) | 2022.12.05 |
리눅스 tar와 tar.gz 차이 (압축, 해제 명령어) (0) | 2022.12.01 |
윈도우 서버 telnet 설치하는 방법 (0) | 2022.11.26 |
IT 솔루션 설치 서버 리소스 모니터링 (0) | 2022.11.24 |