CLI 출력의 크기를 멋진 열로 조정하는 방법

CLI 출력의 크기를 멋진 열로 조정하는 방법

공백으로 구분된 섹션이 있는 일부 텍스트 줄을 출력하는 CLI 한 줄짜리 명령이 있다고 가정해 보겠습니다. 이러한 섹션은 논리적으로 열이어야 하지만 텍스트 너비로 인해 그렇게 보이지는 않습니다.

이런 종류의 출력을 좋은 열로 자동 형식화하려면 어떻게 해야 합니까?

예를 들어 다음과 같은 출력이 있습니다.

Alice param1 param2345 32768 50 16
Bob param2345 param1 512 10 1
_debug_user_ param0 param0 0 0 0

나는 그것을 원한다

Alice        param1    param2345 32768 50 16
Bob          param2345 param1    512   10 1
_debug_user_ param0    param0    0     0  0

답변1

리눅스 사용 column(1):

column -t <file.txt

BSD 사용 rs(1):

rs 0 6 <file.txt

그리고 awk(1):

awk 'FNR==NR { for(i=1; i<NF; i++) if(length($i)>w[i]) w[i]=length($i) }
     FNR!=NR { for(i=1; i<NF; i++) $i=sprintf("%-" (w[i]+1) "s", $i); print }' \
        file.txt file.txt

관련 정보