반응형

두 개의 텍스트 파일에 각각 아래와 같이 데이터가 있는 경우,


 number.txt

alphabet.txt 

1

2

3

4

5

6

A

B

C

D

E

F


두 파일을 열(column)을 추가하는 형태로 이어붙여야 할 때가 있다. 즉,


1    A

2    B

3    C

4    D

5    E

6    F


이런 형태의 파일을 만들고 싶을 때, paste 명령을 쓰면 된다.


$ paste number.txt alphabet.txt


열 간의 기본 구분자는 탭 문자 '\t'로 되어 있다.

만약 두 열 간에 구분자를 다르게 주고 싶으면 -d 옵션으로 명시한다.


// 공백으로 구분할 때

$ paste -d ' ' number.txt alphabet.txt


// 쉼표로 구분할 때 (csv 파일 포맷)

$ paste -d , number.txt alphabet.txt


참고로 paste 명령 왼쪽에 있는 파일의 라인 수가 오른쪽 파일보다 짧더라도 구분자 문자를 먼저 추가한 다음 내용이 붙기 때문에 구분자를 기준으로 하면 각 column이 독립적으로 데이터를 유지할 수 있다.


 number.txt

alphabet.txt 

1

2

3

4

5

6

A

B

C

D

E

F

G
H
I
J
K


예를 들어 위의 두 파일을 paste로 이어붙이면,


1    A

2    B

3    C

4    D

5    E

6    F

G

H

I

J

K


이렇게 숫자 밑에 알파벳이 오지 않도록 column을 유지하며 붙는다.



반응형
블로그 이미지

Bryan_

,