누군가 여기서 무엇이 잘못되고 있는지 지적할 수 있는지 궁금합니다. 공백으로 구분된 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
데이터가 종료되었다는 것을 알고 있다면 CRLF
awk를 설정할 수 있습니다기록 구분 기호BEGIN
그에 따라 블록 에서
BEGIN {RS="\r\n";ORS=RS}
{
print $0, 255.788, 176.009;
}
END{}