전공영역 공부 기록

크기가 큰 csv파일을 리눅스 명령어로 여러 파일로 분할시키는 방법

악분 2025. 11. 9. 20:15
반응형

개요

이 글은 AI 모델 학습용 데이터셋이나 데이터베이스 마이그레이션용 데이터처럼 용량이 큰 CSV 파일을, 리눅스 명령어로 여러 csv 파일로 분할하는 방법을 설명합니다.

 

사용방법

GNU Core Utilities (Coreutils)의 split명령어는 입력 파일을 여러 조각으로 나눕니다.

 

예를 들어 약 1800만개 줄이 있는 csv파일이 있다고 가정해봅시다.

 

split명령어로 이 큰 파일을 700000줄씩 쪼개서 파일을 생성할 수 있습니다.

split -l 700000 lineitem.tbl lineitem_

 

파일 확장자 생성하는 방법

split이 생성한 파일은 파일 확장자가 없는데, 간단히 for문과 mv명령어로 파일 확장자를 추가할 수 있습니다.

split -l 5000000 lineitem.tbl lineitem_ \
	&& for file in lineitem_*; do mv "$file" "${file}.csv"; done

반응형