아래 출력을 재정렬하거나 재배열하는 방법

아래 출력을 재정렬하거나 재배열하는 방법

여기에 나와 함께입력하다:

0015:"IDPTS3O"  
0091: 『초자연』  
0015:"IDPTS3O"  
0091: 『초자연』  
0015:"IDPTS3O"  
0091: 『초자연』  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0036:"  
0015:"IDPTS3O"  
0036:"  
0015:"IDPTS3O"  
0036:"  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0034:"  
0015:"IDPTS3O"  
0036:"  
0015:"IDPTS3O"  
0036:"  
0015:"IDPTS3O"  
0036:"  

나는 원해요산출다음과 같이 표시됩니다: "산소"같이 끝내자"" 같은 열에서 함께 끝나요

0015: "IDPTS3O" 0091: "ODMBS1I"
0015:"IDPTS3O" 0091:"ODMBS1I"
0015:"IDPTS3O" 0091:"ODMBS1I"
0015:"IDPTS3O" 0034:"ADTSS1I"
.
.
.

답변1

주문하다paste다음에서 행 병합여러 입력 파일파일당 하나의 열로 여러 열이 있는 파일로 변환됩니다.

그것은 조합 라인에서 사용될 수 있습니다같은파일은 연속 행이 출력의 연속 열이 되도록 여러 열이 있는 파일로 변환됩니다.

아이디어는 여러 입력 대신 각 행에 대해 하나의 입력을 여러 번 사용하는 것입니다.
표준 입력에서 읽고 여러 번 사용하는 것이 더 좋습니다 -. 이는 표준 입력을 입력 파일로 나타냅니다.

<filename paste -d ' ' - -
  • <filenamefilename표준 입력 읽기
  • -d ' '열 사이의 구분 기호를 기본 탭 대신 공백으로 설정합니다.
  • - -두 개의 표준 입력을 입력 파일 1과 2로 나타내므로 각 행에 대해 표준 입력을 두 번 읽어 첫 번째와 두 번째 열을 만듭니다.

답변2

이 문제를 해결하는 정식 방법에는 가 포함되어 있지만 여기서는 출력 레코드 구분 기호가 홀수 줄의 공백으로 설정되고 짝수 줄의 개행 문자로 설정되는 대안을 paste제공합니다 .awk

awk '{ORS=NR%2?" ":"\n";print}' file

답변3

자유롭게 시도해 보세요:

paste -d " " - - < filename

관련 정보