Basta remover o CR antes do processamento e adicioná-lo depois:
{
gsub("\r","");
print $0,255.788,176.009,"\r"
}
Eu queria saber se alguém seria capaz de apontar o que está errado aqui. Eu tenho um arquivo txt de dados, delimitado por um espaço, de 7 colunas por 10000 linhas. Eu quero adicionar duas colunas extras um com o valor 255.788 e 176.009 para cada entrada de linha.
Eu usei o seguinte script awk:
#! bin/gawk -f
BEGIN {}
{
print $0, 255.788, 176.009;
}
END{}
No entanto, este script adiciona os novos valores ao início da linha seguinte. O novo caractere de linha ^ M aparece no final da linha dos dados antigos como este;
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
Qualquer ajuda ou ideia seria muito apreciada!
Caso isso seja confuso, quero alcançar isso:
1 274.458 165.208 256 192 305.989 142.202 255.788 176.009^M
Se você sabe que os dados são CRLF
terminados, então você pode definir o registro separador de awk de acordo com o BEGIN
block
BEGIN {RS="\r\n";ORS=RS}
{
print $0, 255.788, 176.009;
}
END{}
Tags awk