행 주요 입력에 붙여넣기 사용

행 주요 입력에 붙여넣기 사용

paste다음과 같이 단일 열 입력에서 여러 열이 포함된 파일을 만들 수 있습니다.

some_command | paste - -

some_command이 방법은 데이터가 열 주요 형식으로 생성될 때 작동합니다. 즉, 다음을 입력하십시오.

1
2
3
4

결과 출력

1   2
3   4

그러나 나는 그 반대를 원합니다.

1   3
2   4

배경 : 모두 모으고 싶다질소열 ' 출처:중간 사이즈파일은 집계 파일로 병합됩니다. 나는 다음을 통해 이 작업을 수행하려고 합니다.

cut -f 5 "${files[@]}" | paste - - - - - …

(그리고중간 사이즈 -에스). 그러나 언급한 대로 이는 paste열 마스터 입력에서 예상 한 대로 작동하지 않습니다 . 나는 coreutils(또는 순수 Bash) 솔루션이 있어야 한다고 생각하지 않을 수 없습니다.

답변1

질문을 올바르게 이해했다면 다음을 시도해 볼 수 있습니다 pr.

cut -f 5 "${files[@]}" | pr -5 -s' ' -t -l 40

여기서 -5는 열 수, -s' '는 구분 기호(공백), -l 40는 페이지 길이(40줄)입니다.


그렇지 않은 경우 사람들은 일부를 만드는 coreutils데 사용할 수 있습니다.split질소선:

분할 -l질소네펠레

또는

일부 명령 | 분할 -l질소

그런 다음 paste그들은 함께 있습니다.

paste x* > outfile
rm x*

관련 정보