728x90
반응형
1. sed 사용 (빠르고 간편)
sed -n '1000,$p' catalina.out > new_output.out
- 1000,$p: 1000번째 줄부터 끝까지 출력 ($는 마지막 줄 의미)
- > new_output.out: 결과를 new_output.out 파일에 저장
장점: 빠르고 간단하며 대용량 파일에도 적합
단점: 원본 파일이 너무 크면 속도가 느릴 수도 있음
2. tail 사용 (끝에서 특정 줄을 기준으로 복사)
tail -n +1000 catalina.out > new_output.out
- -n +1000: 1000번째 줄부터 끝까지 출력
- > new_output.out: 새로운 파일에 저장
장점: 속도가 빠르며 메모리 사용량이 적음
단점: tail 명령이 특정 시스템에서 동작 방식이 다를 수도 있음
3. awk 사용 (유연한 처리 가능)
awk 'NR>=1000' catalina.out > new_output.out
- NR>=1000: 1000번째 줄부터 끝까지 출력
장점: 조건을 추가하여 더 세밀한 조정 가능 (예: 특정 패턴 이후부터 복사)
단점: sed보다는 약간 느릴 수 있음
4. Python 스크립트 사용 (복잡한 조건 적용 가능)
with open("catalina.out", "r") as infile, open("new_output.out", "w") as outfile:
for i, line in enumerate(infile, start=1):
if i >= 1000:
outfile.write(line)
- enumerate()를 사용하여 1000번째 줄부터 출력
- Python을 사용하면 정규식 필터링도 가능
💡 장점: 복잡한 조건을 적용 가능 (예: 특정 문자열 이후부터 복사)
💡 단점: 스크립트를 실행해야 해서 번거로울 수 있음
추천 방법
- 빠르게 처리하고 싶다면 → sed 또는 tail
- 유연한 조건이 필요하다면 → awk
- 복잡한 패턴 분석이 필요하다면 → Python
어떤 방법이든, 특정 라인부터 원하는 대로 catalina.out을 복사할 수 있습니다!
728x90
반응형
'python > tips' 카테고리의 다른 글
| 인증과 인가 (권한 부여) 비교 – 특징 및 차이점 (0) | 2025.03.18 |
|---|---|
| tail 로그를 별도 파일로 저장하는 방법 (0) | 2025.02.20 |
| MySQL에서 .gz 압축된 백업 파일 복원 (Restore) (0) | 2025.02.11 |
| MySQL에서 특정 파티션(TRUNCATE) 삭제 방법 (0) | 2025.02.11 |
| mysql에 Data Type Blob으로 4000 Charactor가 차지하는 데이터베이스 테이블의 크기 (0) | 2024.11.06 |