올바른 형식으로 여러 줄을 하나로 병합

올바른 형식으로 여러 줄을 하나로 병합

다음 데이터가 포함된 FILE1.txt라는 파일이 있습니다.

A
B
C
D
E
F
G
H
I
J
K
L

FILE2와 같은 다른 파일의 출력이 필요합니다.

'A', 'B', 'C', 'D', 'E',
'F', 'G', 'H', 'I', 'J',
'K', 'L'

참고:- 새 줄은 쉼표가 있는 마지막 문자 이후가 아니라 5자마다 시작해야 합니다.

답변1

xargs printf "'%s', '%s', '%s', '%s', '%s',\n" <in >out

...마지막 문자 뒤에 쉼표가 추가되기는 하지만요. 실제로 최대 4개의 후행 빈 필드와 마지막 쉼표를 수행합니다.

sed  -e:n -e'$!N;s/\n/&/4;to' -e$\!bn <in >out \
     -e:o -e"s//', '/g;s/.*/'&',/;$"s/,$//

^ 사실은 그렇지 않습니다.

답변2

perl -p0e 's/.+/"$&",/g; s/,\n$//; s/\n/++$i%5?" ":"\n"/ge'

관련 정보