두 열을 비교하고 다음 열에 값을 삽입합니다.

두 열을 비교하고 다음 열에 값을 삽입합니다.

열 단위로 데이터가 포함된 파일이 있습니다. 원하는 결과를 얻을 수 있도록 도와주세요. awk를 사용해 보았지만 값을 삽입할 수 없습니다.

- A  B  C   D   E
- 6 15  78  4   
- 4 14  77  4   23
- 5 13  79  2   45
- 5 16  81  4   
- 5 16  81  4   65

E열이 비어 있는지 확인해야 합니다. A열이 6이면 E열에 A=5로 240을 삽입하고 A=4로 120을 삽입한 다음 공백에 0을 삽입합니다.

예상 출력:

- A B   C   D   E
- 6 15 78   4   240
- 4 14 77   4   0
- 5 13 79   2   120
- 5 16 81   4   120
- 5 16 81   4   120

답변1

예상되는 출력에 따라 E장소의 개방성은 큰 영향을 미치지 않습니다. 다음을 사용하여 필드 값을 확인하는 것으로
충분합니다 .A

awk '{ if($2==6) $6=240; else if($2==5) $6=120; else if($2==4) $6=0 }1' file | column -t

산출:

-  A  B   C   D  E
-  6  15  78  4  240
-  4  14  77  4  0
-  5  13  79  2  120
-  5  16  81  4  120
-  5  16  81  4  120

관련 정보