특정 순서로 awk 출력을 얻어야 함

특정 순서로 awk 출력을 얻어야 함

파일의 데이터:

1234567-5678907
3456789-1234563
3456789-1234567
.
.
.
.
N

이제 다음 형식으로 출력을 원합니다.

1234567-5678907,3456789-1234563,3456789-1234563....n

다음 명령을 사용했지만 시작 부분에 추가 쉼표가 있습니다.

awk -F"-" ' {printf ",%s-%s",$1,$1} END{print""}'

쉘 스크립트에서 사용할 수 있는 명령어를 공유해주세요.

답변1

awk의 출력 레코드 구분 기호를 사용하세요.경구 재수화 소금:

awk 'BEGIN{ORS=",";}1' infile

답변2

paste위의 의견을 바탕으로 한 해결책이 이미 있습니다 . 하지만 그렇게 한다면 해결책 awk은 다음과 같습니다 awk.

awk 'BEGIN{RS="";OFS=","};$1=$1'

끝에 가짜 쉼표를 생성하지 않고 개행 문자로 출력을 올바르게 종료합니다.

관련 정보