SW/리눅스

Linux : Paste 복사 붙여넣기 (줄 병합)

얇은생각 2022. 3. 4. 07:30
반응형

붙여넣기 명령

붙여넣기는 파일의 줄을 수평으로 병합할 수 있는 명령입니다. 인수로 지정된 각 파일의 순차적으로 해당하는 행으로 구성된 행을 탭으로 구분하여 출력합니다.

붙여넣기 명령 사용 방법에 대해 설명합니다.

 

 

Linux : Paste 복사 붙여넣기 (줄 병합)

 

 

붙여넣기 명령을 사용하는 방법

paste는 잘 알려지지 않고 사용되는 Linux Unix 명령줄 유틸리티 중 하나입니다.

붙여넣기 명령의 일반적인 구문은 다음과 같습니다.

paste [OPTION].. [FILE]...

 

 

입력 파일이 제공되지 않거나 -가 인수로 제공된 경우 붙여넣기는 표준 입력을 사용합니다.

다음과 같은 파일이 있다고 가정해 보십시오.

# file1

Iron Man
Thor
Captain America
Hulk
Spider Man

 

# file2

Black Widow
Captain Marvel
Dark Phoenix
Nebula

 

 

옵션 없이 호출되면 붙여넣기는 인수로 지정된 모든 파일을 읽고 공백으로 구분된 파일의 해당 줄을 수평으로 병합합니다.

# paste file1 file2

Iron Man	Black Widow
Thor	Captain Marvel
Captain America	Dark Phoenix
Hulk	Nebula
Spider Man

 

 

출력을 화면에 표시하는 대신 >, > 연산자를 사용하여 파일로 리디렉션할 수 있습니다.

paste file1 file2 > file3

 

 

파일이 없으면 파일이 만들어집니다. > 연산자는 기존 파일을 덮어쓰는 반면 > 연산자는 출력을 파일에 추가합니다.

-d, -delimiter 옵션을 사용하면 기본 TAB 구분자 대신 구분자로 사용할 문자 목록을 지정할 수 있습니다.

각 구분 기호는 연속적으로 사용됩니다. 목록이 모두 사용되면 첫 번째 구분 기호 문자부터 붙여넣기가 다시 시작됩니다.

TAB 대신 _ (밑줄) 문자를 구분 기호로 사용하려면 다음을 입력합니다.

paste -d '_' file1 file2

# Iron Man_Black Widow
# Thor_Captain Marvel
# Captain America_Dark Phoenix
# Hulk_Nebula
# Spider Man_

 

 

다음은 두 개의 구분 기호를 사용한 예입니다.

paste -d '%|' file1 file2 file1

# Iron Man%Black Widow|Iron Man
# Thor%Captain Marvel|Thor
# Captain America%Dark Phoenix|Captain America
# Hulk%Nebula|Hulk
# Spider Man%|Spider Man

 

 

첫 번째 파일과 두 번째 파일의 줄은 구분 기호 목록에서 첫 번째 문자로 구분됩니다. 두 번째 및 세 번째 파일 행은 두 번째 구분 기호로 구분됩니다.

더 많은 파일이 제공된 경우 목록 시작 부분부터 붙여넣기가 다시 시작됩니다.

-s, --serial 옵션은 붙여넣기를 통해 각 파일에서 한 줄 대신 한 번에 한 줄의 파일을 표시합니다.

paste -s file1 file2

# Iron Man	Thor	Captain America	Hulk	Spider Man
# Black Widow	Captain Marvel	Dark Phoenix	Nebula

 

 

명령은 지정된 파일의 모든 행을 분리된 행으로 병합합니다.

-z, --제로 종단된 옵션과 함께 사용할 경우 붙여넣기는 기본 새 줄 문자 대신 null 문자를 사용하여 항목을 구분합니다. 이 동작은 특수 문자가 포함된 파일 이름을 처리하기 위해 find -print0 xargs -0 명령과 함께 붙여넣기를 사용할 때 유용합니다.

붙여넣기 명령은 지정된 파일의 해당 행을 병합하는 데 사용됩니다.

반응형