728x90
paste 명령어
paste 명령어는 두 개 이상의 파일 또는 텍스트를 가로로 병합하여 출력하는 유닉스 및 리눅스 환경에서 사용되는 명령어입니다. 이 명령어를 사용하면 여러 파일이나 텍스트 스트림을 하나의 파일 또는 스트림으로 연결하거나 병합할 수 있습니다. 주로 텍스트 파일의 내용을 합치는데 사용되며, 파일을 열고 닫을 필요 없이 간편하게 작업할 수 있습니다.
paste 명령어의 기본 구문
paste [옵션] 파일1 파일2 ...
여기서 "[옵션]"은 명령어 실행 시 사용할 수 있는 옵션을 나타내며, "파일1", "파일2", ... 등은 병합하려는 파일들의 이름 또는 경로입니다.
- 주요 옵션
- -d 옵션:
- 사용법: paste -d DELIMITER
- DELIMITER로 지정한 문자열을 사용하여 필드(열)를 구분합니다.
- -s 옵션:
- 사용법: paste -s
- 파일들을 세로로 병합하며, 각 파일의 내용을 새로운 행으로 나란히 표시합니다.
- -d 옵션:
사용 예시
- -d 옵션: 필드 구분자 지정
- -d 옵션을 사용하여 필드 구분자를 지정할 수 있습니다. 기본적으로는 탭 문자로 필드를 구분합니다.
paste -d',' file1.txt file2.txt
- -s 옵션: 세로 병합
- -s 옵션을 사용하여 파일들을 세로로 병합할 수 있습니다.
paste -s file1.txt file2.txt
- 여러 파일 병합 예시
- 두 개의 파일을 가로로 병합하는 예시입니다.
paste file1.txt file2.txt > merged.txt
- 필드 구분자 지정 예시
- 쉼표(,)로 필드를 구분하는 두 파일을 가로로 병합하는 예시입니다.
paste -d',' file1.txt file2.txt > merged.csv
- 세로 병합 예시
- 파일1과 파일2의 내용을 세로로 병합하는 예시입니다.
paste -s file1.txt file2.txt > merged.txt
728x90
- 예제 파일(111.txt, aaa.txt)
$ cat 111.txt
111
222
333
444
555
$ cat aaa.txt
aaa
bbb
ccc
ddd
eee
- paste 명령으로 두 파일을 한 줄씩 병합하여 출력
paste 111.txt aaa.txt
$ paste 111.txt aaa.txt
111 aaa
222 bbb
333 ccc
444 ddd
555 eee
- -s 옵션은 수직으로 되어있는 값을 읽어 수평으로 출력
paste -s 111.txt aaa.txt
$ paste -s 111.txt aaa.txt
111 222 333 444 555
aaa bbb ccc ddd eee
- -d 옵션은 구분자를 지정하여 출력
paste -d ., 111.txt aaa.txt
paste -d '.' 111.txt aaa.txt
$ paste -d '.' 111.txt aaa.txt
111.aaa
222.bbb
333.ccc
444.ddd
555.eee
- -s -d 옵션으로 구분자로 탭(\t)과 개행(\n) 사용하여 출력
paste -s -d '\t\n' 111.txt
$ paste -s -d '\t\n' 111.txt
111 222
333 444
555
$ paste -s -d '\t\t\n' 111.txt
111 222 333
444 555
$ paste -s -d '\t\t\t\n' 111.txt
111 222 333 444
555
php 패키지 목록을 세로에서 가로로 출력
$ cat a.txt | sort
php
php-cli
php-common
php-devel
php-fpm
php-gd
php-intl
php-json
php-mbstring
cat a.txt | sort | paste -d ' ' -s
$ cat a.txt | sort | paste -d ' ' -s
php php-cli php-common php-devel php-fpm php-gd php-intl php-json php-mbstring php-mysqlnd php-opcache
728x90
'리눅스' 카테고리의 다른 글
[리눅스] MySQL 5.7 이후 버전 root 비밀번호 변경 (0) | 2022.03.30 |
---|---|
VMware ESXi 환경에서 리눅스 가상 머신(VM)의 하드 디스크 용량을 증설하는 방법 - CentOS (0) | 2022.03.30 |
[리눅스] 젠킨스 빌드 이름 및 설명 설정자(Build Name and Description Setter) 플러그인 (0) | 2022.03.28 |
[draft] 프라이빗 Docker Registry를 사용하는 방법 (0) | 2022.03.28 |
CentOS 7에 Node.js와 npm을 설치하는 방법 (0) | 2022.03.25 |