awk를 통해 줄 끝에 항목 추가

awk를 통해 줄 끝에 항목 추가

누군가 여기서 무엇이 잘못되고 있는지 지적할 수 있는지 궁금합니다. 공백으로 구분된 7열 x 10000행의 txt 데이터 파일이 있습니다. 각 행 항목에 두 개의 추가 열(하나는 값 255.788 및 176.009)을 추가하고 싶습니다.

다음 awk 스크립트를 사용했습니다.

#! bin/gawk -f

BEGIN {}
{ 
    print $0, 255.788, 176.009;
}
END{}

그러나 이 스크립트는 다음 줄의 시작 부분에 새 값을 추가합니다. 아래와 같이 새 줄 문자 ^M이 이전 데이터 줄 끝에 나타납니다.

1 274.458 165.208 256 192 305.989 142.202^M 255.788 176.009

2 276 164.278 256 192 305.963 142.037^M 255.788 176.009

어떤 도움이나 아이디어라도 대단히 감사하겠습니다!

이것이 혼란스러우면 다음을 달성하고 싶습니다.

1 274.458 165.208 256 192 305.989 142.202 255.788 176.009^M

답변1

CR이전 처리를 제거 하고 다음을 추가하세요.

{
    gsub("\r","");
    print $0,255.788,176.009,"\r"
}

답변2

데이터가 종료되었다는 것을 알고 있다면 CRLFawk를 설정할 수 있습니다기록 구분 기호BEGIN그에 따라 블록 에서

BEGIN {RS="\r\n";ORS=RS}
{ 
    print $0, 255.788, 176.009;
}
END{}

관련 정보