윈도우 대용량 텍스트 파일 나누는 방법
- 운영체제(OS)
- 2023. 2. 5.
텍스트로만 이루어진 단일 로그 파일이 수십, 수백 GB 단위로 생성되기도 합니다. 이런 로그 파일은 메모장으로 열 수도 없을뿐더러, 운이 안 좋으면 과부하로 시스템이 뻗어버릴 수도 있습니다. 용량이 커서 서버 밖으로 꺼내서 분석을 하기도 쉽지 않습니다.
이런 경우 윈도우 운영체제에서 대응 가능한 방법에 대해 알아보겠습니다. 첫 번째는 파일의 내용을 일부씩 확인하는 방법이고, 두 번째는 텍스트 파일을 여러 개의 파일로 나누어 저장하고 반출하는 방법입니다.
대용량 로그 파일 확인 방법
예시를 위해 log1, log2, log3, … log10000까지 이어지는 1만줄짜리 Large_logs.txt를 생성했습니다.
1. CMD more로 내용 확인
more 명령어를 이용하면 텍스트의 일부씩만 로드하며 내용을 확인할 수 있습니다.
Large_logs.txt 파일이 있는 경로에서 cmd를 실행합니다. 파일탐색기 경로창에 cmd를 입력하고 엔터를 치면 해당 경로에서 cmd가 실행됩니다.
more 명령어로 파일을 오픈합니다.
more Large_logs.txt
맨 위에서부터 파일의 내용을 확인할 수 있습니다. 아래 방향키를 누르면 내용이 아래로 내려갑니다. 스페이스를 누르면 한 페이지씩 이동합니다. 확인이 끝나면 q를 눌러 빠져나옵니다. 맨 아래 보이는 More (0%)처럼 출력되는 내용이 전체 파일 내용의 몇 퍼센트 위치에 있는지 확인할 수 있습니다.
2. 파워쉘로 파일 나누기
cmd와 마찬가지로 파일탐색기 경로에 powershell을 입력하고 엔터를 칩니다.
아래의 명령 형식을 이용하면 됩니다. 원본 텍스트파일을 N라인씩 분할해서 마지막 줄까지 나누어 파일을 저장하는 구문입니다.
[구문]
$i=0; Get-Content 원본파일명 -ReadCount 분할 라인 수 | %{ $i++; $_ | Out-File 분할파일명-$i.log; Write-Host $i }
[예시]
1만줄짜리 Large_logs.txt 파일을 100줄씩 분할해서 저장해 보겠습니다.
$i=0; Get-Content Large_logs.txt -ReadCount 100 | %{ $i++; $_ | Out-File output-$i.log; Write-Host $i }
Large_logs.txt 텍스트 파일이 output-n.log라는 이름으로 순차적으로 100줄씩 정상 저장됐습니다.
'운영체제(OS)' 카테고리의 다른 글
리눅스 파일 실행할 때 ./를 쓰는 이유 (0) | 2023.02.08 |
---|---|
윈도우 PowerShell이란? CMD와 차이 (0) | 2023.02.05 |
윈도우 DebugView 사용하는 방법 (앱 디버깅) (0) | 2023.02.04 |
윈도우 서비스 강제 종료 taskkill 명령어 사용법 (0) | 2023.02.03 |
리눅스 시간 확인 명령어 date 사용 방법 (0) | 2023.02.03 |