강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

특정 파일을 나누어 저장하는 split 개론과 활용예

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

특정 파일을 나누어 저장하는 split 개론과 활용예






 

split 지정된 파일을 주어진 방식대로 나누는(쪼개는, 조각내는) 명령어입니다.

 

 

 

  특정 파일을 나누는 방법으로는 용량별로 나누는 방법과 행수로 나누는 방법등이 있습니다.

 

 

 

  명령어는 특정 파일의 용량이 너무 커서 (용량, 행등의) 단위별로 나눌 필요성이 있거나 특정 목적에 의해 나누어서 사용해야 경우에 사용됩니다.

 

 

 

  또한 split명령어는 아무런 옵션없이 그냥 사용하면 지정된 파일을 1000행씩 나누어서 저장합니다.

 

 

 

 

 

그리고 split명령어의 결과로 자동생성되는 파일들의 이름은 xaa, xab, xac,….등과 같은 순서대로 저장이 됩니다.

 

 

 

  파일명의 개수는 기본이 3문자로 생성되지만 파일명으로 사용할 문자의 개수도 지정이 가능합니다.

 

 

 

 

 

 

명령어위치 :  /usr/bin/split

 

사용형식   :  split [OPTION] [INPUT [PREFIX]]

 

 

용량이 텍스트 파일을 여러 개의 파일로 나누기 위하여 split명령어를 사용할 때에 아무런 옵션 없이 “split 파일명 같이 실행하시면 지정된 파일을 1000행씩 나누어서 저장하게 됩니다.

 

 

 

  split명령어는 지정된 파일을 1,000행씩 나누어 저장하는 것이 기본설정 값입니다.

 

 

 

 

 

다음은 su.conf이라는 파일을 대상으로 split명령어를 사용한 예입니다.

 

 

 

 

 

먼저 ls명령어로 su.conf파일을 확인 하였습니다.

 

 

 

 그리고 wc명령어로 su.conf파일의 전체 행수를 확인 하였습니다.

 

 

 

  wc명령어에 -l옵션을 사용하시면 지정한 파일의 행수를 출력해 줍니다.

 

 

 

  “wc –l su.conf”이라는 아래의 명령어는 su.conf이라는 파일의 전체 행수를 출력한 것이며 결과로 su.conf파일의 전체 행수는 20,135행이라는 것을 수가 있습니다.

 

 

 

 

 

[root@su250 su3.0]# ls -l

합계 1432

-rw-r--r-- 1 root root 1458240 2008-12-2501:41 su.conf

[root@su250 su3.0]#

[root@su250 su3.0]# wc -l su.conf

20135 su.conf

[root@su250 su3.0]#

 

그리고 아래 “split su.conf” 같이 split명령어에 어떤 옵션도 사용하지 않으면 지정한 파일을 1,000행씩 나누어 저장합니다.

 

 

 

  아래 보시는 바와같이 “split su.conf” 결과로 su.conf파일을 1,000행씩 나누어서 자동생성되는 파일에 저장이 것입니다.

 

 

 

  결과를 ls 명령어로 확인 하였습니다.

 

 

 

 

 

[root@su250 su3.0]# split su.conf

[root@su250 su3.0]#

[root@su250 su3.0]# ls -l

합계 712

-rw-r--r-- 1 root root 345336 2008-12-2501:45 su.conf

-rw-r--r-- 1 root root  11341 2008-12-2501:47 xaa

-rw-r--r-- 1 root root  19270 2008-12-2501:47 xab

-rw-r--r-- 1 root root  19368 2008-12-2501:47 xac

-rw-r--r-- 1 root root  19182 2008-12-2501:47 xad

-rw-r--r-- 1 root root  19591 2008-12-2501:47 xae

-rw-r--r-- 1 root root  16236 2008-12-2501:47 xaf

-rw-r--r-- 1 root root  10846 2008-12-2501:47 xag

-rw-r--r-- 1 root root  19185 2008-12-2501:47 xah

-rw-r--r-- 1 root root  19379 2008-12-2501:47 xai

-rw-r--r-- 1 root root  19207 2008-12-2501:47 xaj

-rw-r--r-- 1 root root  19481 2008-12-2501:47 xak

-rw-r--r-- 1 root root  17385 2008-12-2501:47 xal

-rw-r--r-- 1 root root  12104 2008-12-2501:47 xam

-rw-r--r-- 1 root root  16842 2008-12-2501:47 xan

-rw-r--r-- 1 root root  19375 2008-12-2501:47 xao

-rw-r--r-- 1 root root  19245 2008-12-2501:47 xap

-rw-r--r-- 1 root root  19377 2008-12-2501:47 xaq

-rw-r--r-- 1 root root  18715 2008-12-2501:47 xar

-rw-r--r-- 1 root root  13946 2008-12-2501:47 xas

-rw-r--r-- 1 root root  13723 2008-12-2501:47 xat

-rw-r--r-- 1 root root   1538 2008-12-2501:47 xau

[root@su250 su3.0]#

 

그리고 위에서 자동생성된 파일들 xaa, xab,…등의 파일들이 모두 1,000행씩 나누어서 저장되었는가를 확인하기 위하여 아래의 예에서는 wc명령어를 사용한 것입니다.

 

 

 

  xaa파일의 행수를 확인한 결과 1,000행이라는 것을 수가 있으며 또한 xab파일의 행수가 1,000행이라는 것도 있습니다.

 

 

 

 나머지 파일들도 모두 마찬가지일 것입니다.

 

 

 

 

 

[root@su250 su3.0]# wc -l xaa

1000 xaa

[root@su250 su3.0]#

[root@su250 su3.0]# wc -l xab

1000 xab

[root@su250 su3.0]#

[root@su250 su3.0]# wc -l xac

1000 xac

[root@su250 su3.0]#

 

결론적으로 이번 예에서 우리는 split명령어는 지정된 파일을 1,000행씩 나누어서 저장한다는 것을 있습니다 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,039 명
  • 현재 강좌수 :  35,848 개
  • 현재 접속자 :  95 명