헤더 분리

헤더 분리

다음과 같은 헤더가 있습니다.

Unix Linux Trumpet Perl 1|1 1|2 1|3

제목을 다음과 같이 바꾸려면 어떻게 해야 합니까?

                          1   1   1
Unix Linux Trumpet Perl   1   2   3

for 루프를 사용해 보았습니다.

awk 'for (i=0; 1<row.length; i++)
if values[i] == "|"

그런 다음 행을 분할하여 동일한 열에 추가하지만 작동하지 않습니다. Linux에서 이 작업을 어떻게 수행할 수 있나요?

답변1

일방 통행:

$ cat file 
Unix Linux Trumpet Perl 1|1 1|2 1|3
$
$ awk -F"[ |]" '{
 printf "%-10s %-10s %-10s %-10s %-3s %-3s %-3s\n","","","","",$5,$7,$9;
 printf "%-10s %-10s %-10s %-10s %-3s %-3s %-3s\n",$1,$2,$3,$4,$6,$8,$10;
 }' file
                                            1   1   1
Unix       Linux      Trumpet    Perl       1   2   3

관련 정보