1.
apple
banana
cherry
date
elderberry
fig
grape
input.txt파일 = 가장 길이가 긴 문자인 elderberry를 기준으로 열의 너비를 계산해 설정된다.
2.

ncol = int(60 / max + 0.5)
# elderberry 글자수는 10, max=10에 넣어지고 정수로 계산하면 6 이된다
3.
# 출력형식 정의 - max = 10일 때, fmt는 %-10.10s로 설정됩
# 이는 출력 시 최소 10칸의 공간을 확보하며, 문자열이 10자를 초과해도 10자까지만 출력
fmt = sprintf("%%-%d.%ds", max, max)
# 현재줄의 길이 length($0)가 max보다 길면 긴길이만큼 max가 업데이트된다
{ lines[NR] = $0
if (length($0) > max)
max = length($0)
}
4.
# 앞에 공백 제거
sub(/^ +/, "", out)


참고한 책입니다
https://www.yes24.com/Product/Goods/139880801
AWK 프로그래밍 언어 2판 - 예스24
코드의 거장들이 만든, 텍스트 처리의 숨은 고수 AWK1977년부터 지금까지 변하지 않는 데이터 분석 도구쉽다, 생산적이다, 언제나 사용할 수 있다!AWK 창시자가 직접 쓴 가이드대규모 로그 파일 분
www.yes24.com